实现由文本导入到Access已经定义好的表

jieguo 2010-02-09 10:06:23
想实现 从文本文件导入到Access已经定义好的表,

文本文件内容是:

id1,value11, value12,value13
id2,value21,value22,value23

表字段
id, value0,value1,value2,value3,value4

实现吧文本里面的内容,对应每个字段 导入到表里面,有没有比较快速的方法。
...全文
88 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
vssvss 2010-02-09
  • 打赏
  • 举报
回复
还是手动的快 我16万数据 不到一分钟就搞完了
大巧不工 2010-02-09
  • 打赏
  • 举报
回复
工作中很少用到Access数据库。不是很深度的了解,不过我按照你的意图搜了一下
http://topic.csdn.net/t/20060529/10/4785349.html
楼主在贴中给出了一段导入txt的sql,不过这样对于他还有问题。如果你导入的文件个数不像楼主这么多的话,可以参考一下,希望对你有帮助。
jieguo 2010-02-09
  • 打赏
  • 举报
回复
引用 9 楼 saijie1983 的回复:
首先,确定文本的格式,一条数据一行,列于列之间用特殊符号分隔。
空值也要分隔“123||456”。
使用FileStream与StreamReader配合逐行读出数据。
FileStream fs = new FileStream(...);
StreamReader sr = new StreamReader(fs);
sr.ReadLine();

使用Split()根据特殊符号分割成数组,然后写insert into插入数据库

我曾经做过一次文本导入,因为数据量过大,我使用Oracle提供的utl_file包,直接利用Oracle导入。
以上仅为参考。


对的,超过百兆之后,用文本读入的方式确实就开始慢了,我就想问有没有快的方式,只需要导入Access就行
大巧不工 2010-02-09
  • 打赏
  • 举报
回复
首先,确定文本的格式,一条数据一行,列于列之间用特殊符号分隔。
空值也要分隔“123||456”。
使用FileStream与StreamReader配合逐行读出数据。
FileStream fs = new FileStream(...);
StreamReader sr = new StreamReader(fs);
sr.ReadLine();

使用Split()根据特殊符号分割成数组,然后写insert into插入数据库

我曾经做过一次文本导入,因为数据量过大,我使用Oracle提供的utl_file包,直接利用Oracle导入。
以上仅为参考。
jieguo 2010-02-09
  • 打赏
  • 举报
回复
引用 7 楼 starj1 的回复:
跳行的文本数据只能自己写程序,一行一行读出来,用Insert慢慢插吧。


不用跳行,需要跳列
starj1 2010-02-09
  • 打赏
  • 举报
回复
跳行的文本数据只能自己写程序,一行一行读出来,用Insert慢慢插吧。
jieguo 2010-02-09
  • 打赏
  • 举报
回复
引用 5 楼 vssvss 的回复:
那你将上面手动的步骤也成代码执行也可以的, 我快的话 不超过30秒


不会才问你的啊
vssvss 2010-02-09
  • 打赏
  • 举报
回复
那你将上面手动的步骤也成代码执行也可以的, 我快的话 不超过30秒
jieguo 2010-02-09
  • 打赏
  • 举报
回复
引用 2 楼 vssvss 的回复:
有啊 我就是用手动导入大量txt数据的。
新建一个access,点击外部数据,选择txt,导入你的txt文件路径,设置下就可以了 但是txt数据里面格式一定的对齐。

我不是手动导,是用程序来实现,
再一个,我的表时提前定义好的格式,不能被修改,导入的时候,文本文件里面的内容 是所有字段的一部分,不是所有字段都有值
vssvss 2010-02-09
  • 打赏
  • 举报
回复
你可以在txt的第一行加上表头信息, 在导入txt后有个选项是将第一行设为表头信息的 不用担心这个
vssvss 2010-02-09
  • 打赏
  • 举报
回复
有啊 我就是用手动导入大量txt数据的。
新建一个access,点击外部数据,选择txt,导入你的txt文件路径,设置下就可以了 但是txt数据里面格式一定的对齐。
jieguo 2010-02-09
  • 打赏
  • 举报
回复
文本文件里面没有 表头信息

110,552

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧