SQL高阶问题,低手莫入!(100分)

  • 主题发起人 主题发起人 zyzdy
  • 开始时间 开始时间
Z

zyzdy

Unregistered / Unconfirmed
GUEST, unregistred user!
1.我们一般在做数据库的输入操作中,用的是insert语句这是大家都知道的。

2.如果你用过import or export(SQL附带),它的数据库载入速度是insert

的百倍以上。

3.bcp的数据载入速度也是一流。

4.当我们在做大量数据的载入的时候又想要在程序中实现那么我们该如何来

实现功能以达到import or export的速度呢?









 
热切关注..
 
试一试TBatchMove
 
热切关注..
 
insert * from Database.Table如何?
 
TBatchMove就是用来导批量数据的,这种方法最快!从客户批量写入服务器最好的办法。
如果是从服务器倒入客户端,最好分批,用用SQL explorer,就是这样做的。
 
我觉得这个问题不应该从客户端着手。
Oracle 的 import or export 好像是不做日志的处理。

不做日志处理的话,速度当然要快很多。
 
谢谢大家的关注

对于这个问题,我首先声明一点,对SQL Server来讲如果该表存在主键日志无论

如何是被要记载的,还有,export时当然与日志无关。.

我注意到microsoft对此问题的解决方案是推介用户调用OLE DB 的批量处理API,

可惜小弟无这方面的资料及技术。





 
还有一个问题,TBatchMove,只能使用BDE方式还有不是最好的解决方案我已试过。。

如果对SQL 操作的话,microsoft的ADO我相信是最快的。。也是以后的发展方向。。

君不见,连IBM AS400都提供ADO的结口,oracle也是测试当中。。。要想找个通用而

快速的结口我看ado是首选了(我也是最近一个月才转向ADO的,以前用ODBC与BDE)



 
你可以到MS的站点上去下一个MDAC SDK,大约15M,有详细的OLE DB、ODBC、ADO文档
及有关程序范例。我已经当了一个,还没来得及仔细研究。
 
TBatchMove在Oracle下道Blob字段和某些字符串字段时有bug 小心点
 
同意左大侠的高见!
 
呵呵,你研究一下ODBCBCP.DLL吧。
 
使用DELPHI自带的ADO控件,难道它不同过BDE吗?
 
对于大量的数据复制,微软有专门的dts服务来进行,其技术底层仍然是OLEDB。
据茶壶开发ADOBridge的实际情况来看,直接对OLEDB操作速度是ADO的2倍到1000倍,
当含有二进制内容和大容量文本时尤其突出。
 
jojo,感谢作答但我不知如何才算直接操作ole DB...

它有api可供呼叫吗?

 
我是用台湾联诠信息的转文件过帐组件处理,用法简单,转文件速度快。
 
后退
顶部