18 个解决方案
#1
用批更新可以吗?比如1000条插一次;
#2
在Form上放一个ADOConnection,连结指向目标Access库
比如txt文件在c:\temp\aaaa.txt
就执行
ADOConnection.Connected := True;
ADOConnection.Execute('Select * Into abcd From [Text;Database=c:\temp].aaaa.txt');
比如txt文件在c:\temp\aaaa.txt
就执行
ADOConnection.Connected := True;
ADOConnection.Execute('Select * Into abcd From [Text;Database=c:\temp].aaaa.txt');
#3
先把数据库里的索引删了,再插入速度会快点
#4
to:WWWWA(aaaa)
您说的方法我试过了,不过运行到ADOCONNECTION.execute()的时候报错提示
‘could not find file 'c:\programfiles\borland\delhi5\projects\text'不知为何?
您说的方法我试过了,不过运行到ADOCONNECTION.execute()的时候报错提示
‘could not find file 'c:\programfiles\borland\delhi5\projects\text'不知为何?
#5
你的那个文本不在工程目录下
#6
少个扩展名嘛
如果你这文本格式式ADO 不认识的话。。。
就用文件操作吧
如果你这文本格式式ADO 不认识的话。。。
就用文件操作吧
#7
通过动态产生SQL语句来更新,每次更新一定数量例如100条!
直接独入牵扯到字段对应问题
直接独入牵扯到字段对应问题
#8
那么怎样动态产生SQL语句每次更新100条数据呢,还请指教,谢谢
#9
采用多线程 一个线程从文本文件读各个字段的数据 一个线程负责向数据库插入各字段 共享一些变量 如数组等
#10
帮你顶一下
我只会瞎说
我只会瞎说
#11
动态产生SQL语句每次更新一定量数据的方法该怎样做呢还请指教,谢谢
#12
我也在寻求这个问题的解决方法,同命相连,帮你顶顶。
线索:我用sql语句执行,效率提高了一倍多,但数据量大,机器配置地肯定是最致命的问题。
如果这样,给你一个建议,可能对你有帮助:一旦需要处理这样的大数据量任务时,停止其它任务,显示进度条,给用户一种比较直观的处理数据的感觉,否则硬盘不停的转,屏幕什么反映都没有,用户会认为死机。另外,处理这种数据的时机尽量要放在系统不太忙的时候,如退出系统前。好,希望对你有帮助,如果解决了,给个消息!
线索:我用sql语句执行,效率提高了一倍多,但数据量大,机器配置地肯定是最致命的问题。
如果这样,给你一个建议,可能对你有帮助:一旦需要处理这样的大数据量任务时,停止其它任务,显示进度条,给用户一种比较直观的处理数据的感觉,否则硬盘不停的转,屏幕什么反映都没有,用户会认为死机。另外,处理这种数据的时机尽量要放在系统不太忙的时候,如退出系统前。好,希望对你有帮助,如果解决了,给个消息!
#13
我顶住
#14
还是没有找到好的办法,我在更新数据库时已经加入进度条显示了,但是几十万条数据,4-5小时的插数据操作让人很难接受呀。
#15
还是没有解决呢,大家再来想想办法,给提个好的建议吧,谢谢。
#16
怎么会要这么长时间啊,我40多万条纪录做了没超过2分钟啊
#17
如果不想编程,那么使用SQL Server中的DTS,
如果想编程,那么使用Bulk Copy命令,具体使用方法参考SQL Server的联机帮助!
如果想编程,那么使用Bulk Copy命令,具体使用方法参考SQL Server的联机帮助!
#18
那到底怎样使用ADOQUERY的SQL命令方式提高从文本记录读出数据插库的速度呢
#1
用批更新可以吗?比如1000条插一次;
#2
在Form上放一个ADOConnection,连结指向目标Access库
比如txt文件在c:\temp\aaaa.txt
就执行
ADOConnection.Connected := True;
ADOConnection.Execute('Select * Into abcd From [Text;Database=c:\temp].aaaa.txt');
比如txt文件在c:\temp\aaaa.txt
就执行
ADOConnection.Connected := True;
ADOConnection.Execute('Select * Into abcd From [Text;Database=c:\temp].aaaa.txt');
#3
先把数据库里的索引删了,再插入速度会快点
#4
to:WWWWA(aaaa)
您说的方法我试过了,不过运行到ADOCONNECTION.execute()的时候报错提示
‘could not find file 'c:\programfiles\borland\delhi5\projects\text'不知为何?
您说的方法我试过了,不过运行到ADOCONNECTION.execute()的时候报错提示
‘could not find file 'c:\programfiles\borland\delhi5\projects\text'不知为何?
#5
你的那个文本不在工程目录下
#6
少个扩展名嘛
如果你这文本格式式ADO 不认识的话。。。
就用文件操作吧
如果你这文本格式式ADO 不认识的话。。。
就用文件操作吧
#7
通过动态产生SQL语句来更新,每次更新一定数量例如100条!
直接独入牵扯到字段对应问题
直接独入牵扯到字段对应问题
#8
那么怎样动态产生SQL语句每次更新100条数据呢,还请指教,谢谢
#9
采用多线程 一个线程从文本文件读各个字段的数据 一个线程负责向数据库插入各字段 共享一些变量 如数组等
#10
帮你顶一下
我只会瞎说
我只会瞎说
#11
动态产生SQL语句每次更新一定量数据的方法该怎样做呢还请指教,谢谢
#12
我也在寻求这个问题的解决方法,同命相连,帮你顶顶。
线索:我用sql语句执行,效率提高了一倍多,但数据量大,机器配置地肯定是最致命的问题。
如果这样,给你一个建议,可能对你有帮助:一旦需要处理这样的大数据量任务时,停止其它任务,显示进度条,给用户一种比较直观的处理数据的感觉,否则硬盘不停的转,屏幕什么反映都没有,用户会认为死机。另外,处理这种数据的时机尽量要放在系统不太忙的时候,如退出系统前。好,希望对你有帮助,如果解决了,给个消息!
线索:我用sql语句执行,效率提高了一倍多,但数据量大,机器配置地肯定是最致命的问题。
如果这样,给你一个建议,可能对你有帮助:一旦需要处理这样的大数据量任务时,停止其它任务,显示进度条,给用户一种比较直观的处理数据的感觉,否则硬盘不停的转,屏幕什么反映都没有,用户会认为死机。另外,处理这种数据的时机尽量要放在系统不太忙的时候,如退出系统前。好,希望对你有帮助,如果解决了,给个消息!
#13
我顶住
#14
还是没有找到好的办法,我在更新数据库时已经加入进度条显示了,但是几十万条数据,4-5小时的插数据操作让人很难接受呀。
#15
还是没有解决呢,大家再来想想办法,给提个好的建议吧,谢谢。
#16
怎么会要这么长时间啊,我40多万条纪录做了没超过2分钟啊
#17
如果不想编程,那么使用SQL Server中的DTS,
如果想编程,那么使用Bulk Copy命令,具体使用方法参考SQL Server的联机帮助!
如果想编程,那么使用Bulk Copy命令,具体使用方法参考SQL Server的联机帮助!
#18
那到底怎样使用ADOQUERY的SQL命令方式提高从文本记录读出数据插库的速度呢