奉上所有分数,请各位发表己见...没有试验就没有发言权!(200分)

  • 主题发起人 主题发起人 qrsgroup
  • 开始时间 开始时间
Q

qrsgroup

Unregistered / Unconfirmed
GUEST, unregistred user!
txt文件,大约有30万条记录,如何能快速导入access中呢?
每行记录是"","",......这样间隔的
当然,双引号中间也会有逗号或者‘"’或者‘'’,中英文不一定。
(给定的数据格式不很统一,所以分割数据有一定的难度)
也可以使用txt、cvs、xml等文件直接作为数据库,但要实现查询功能

最主要的是---是否可以实现最快速导入呢
编程实现最好了
此问题困扰很久,忘高人指点一二......

txt文件和数据库存储在
cdd_80@163.com
密码:access
最好能附代码

本人联系方式:
QQ:550587435
 
首先用BCP导入到SQL server数据库中,然后再从SQL server导入Access
 
怎么是逃犯信息
由于文件太大,只给导入部分数据试试,看看合不合你的要求
已经发到你的邮箱
 
所谓的快速导入是在多少时间内导入.
其实你可以先做个试验.用一些测试数据来填充ACCESS表,看30万条数据需要多长时间,能不能符合你的要求,这就可以排除一些不适合的数据库了,因为我们导入数据也是要通过引擎来做的.

其次,你可以试试用ODBC的TEXT驱动,它可以查询数据,但是数据没有索引,因此查询速度是很慢的.
 
可以试试用FireBird的嵌入式来做,这样查询不但没有问题,而且放在光盘上也可以直接运行,数据量大用不管用Access还是TEXT都效果不好且Access打开时会产生.ldb文件在光盘上就用不上了
 
to xjw100: 此方法不可行。原因是客户的计算机水平有限,出问题不好维护。

to mjp123: 你的数据导入是对的,但你是用程序导入还是直接用Access导入外部数据的?前者用了多长时间,后者的话就没有必要了。

to penal: 目前导入时间在10分钟左右,快速导入最好控制在3分钟以内,当然3秒钟更佳。:) ODBC可以实现,速度很慢,不采用

to LinFeng54: FireBird看过一点资料但是没有做过开发,那么在数据导入这方面支持怎么样?您有没有试一下?
 
还有没有热心人发言?[:(]
 
你可以用ACCESS的导入功能导入文本文件. 快得很, 但不知道如何编程. 应该用OLE可以实现
 
如果使用firebird embed一条条导入的话,我试一下211秒, 比ADO快不少. 我的CPU是双核的
 
分拣文本数据只需要管住3个要素:
1、以什么作为换行符
2、以什么作为字段分隔符
3、以什么作为字符型字段的限定符
把握好这三个要素,如果个别有问题的字段,就选择按某种条件强制转换或抛弃错误记录吧。
这个要用Delphi程序实现?如果不强求的话,你可以看看SQL Server带的数据导入导出工具,可以用VBScript来编写脚本。
 
to penal: 我正在考虑使用 firebird数据库,有没有联系方式? 交流一下
我QQ:154639169
 
to Sachow:分割条件不是问题,不管用什么方法都是在考虑速度的问题,编程实现的路子我都走过了,速度不太理想,用脚本的话没有写过,你觉得速度怎样? 最好能够附上代码...
 
我下载数据试了一下,确实比想像中的要困难,我用SQL语句插入,但导到4万多条时出错;用Access2003自己的导入功能,才导到2万多条就因为错误太多而终止了;然后用了最笨的Append, Post方法,导到10万条都没报错,但时间已经超过10分钟了(我机器差,只有512M内存)。
 
to qrsgroup: QQ 15136064, 昨天你已经加了我了, 忘记了吗[:D]
如果只是要导入,不需要写代码的话,ACCESS的导入功能应该足够了.
 
我已试过用FirdBird导入成功,今天太晚了,明天整理了再传给你
本想做查询的,但不知道你对查询有什么要求,所以...
 
这个问题有分量.研究研究,
 
昨天突然想起一个方法, 可以在半分钟内导入
select * into tfxx from [tfxx.txt] in "E:/DATA" "Text;"
 
感谢penal,感谢所有关注此问题的同仁。
此问题解决方案:
1. 使用FirdBird数据库
2. 使用ADO
本人最终接受第二种解决方案
详细请查看
http://www.delphibbs.com/keylife/iblog_show.asp?xid=29820
 
后退
顶部