在VB中如何将txt文本导入sqlserver

jinhai2003 2003-09-12 12:00:13
有一个txt文本文件,其文件格式如下:“2003-9-12 8:00:00”,“50”;“2003-9-12 9:00:00”,“40”;“2003-9-12 10:00:00”,“30”;
在VB中怎么利用ADO控件将上述的三条记录:“2003-9-12 8:00:00”,“50”;“2003-9-12 9:00:00”,“40”;“2003-9-12 10:00:00”,“30”;分成两列导入在SQLServer数据库中的table1表中。导入后的表为:
第一列 第二列
2003-9-12 8:00:00 50
2003-9-12 9:00:00 40
2003-9-12 10:00:00 30
要是有别的方法,敬请赐教。谢谢!!
...全文
113 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
FeelingL 2003-09-12
  • 打赏
  • 举报
回复
1.读取文本文件
2.用split()函数将文本文件分解成三条记录
3.再用split()函数分解
4.然后通过Rs赋值,保存到数据库中
yijiansong 2003-09-12
  • 打赏
  • 举报
回复
用split()分隔的
astroboy 2003-09-12
  • 打赏
  • 举报
回复
我现在作的文本文件有几百行,每行是用换行分隔的,而且每行的字段数(用,分隔)不同,即字段相同的导入同一个数据库表中。
我就是用split()分隔的
astroboy 2003-09-12
  • 打赏
  • 举报
回复
楼主的这个文本文件比较简单,建议采用FeelingL() 的做法
当然如果不需要用程序实现的话,直接用DTS就可以了
szyhy810518 2003-09-12
  • 打赏
  • 举报
回复
先要把文本文件的数据格式化:

2003-9-12 8:00:00|50
2003-9-12 9:00:00|40
2003-9-12 10:00:00|30

文本文件存为f:\test.txt

然后将数据导入test数据库的tb1表中:

Dim cn As New ADODB.Connection
Dim cm As New ADODB.Command
Dim strFile As String
strFile = "f:\test.txt"
cn.Open "provider=sqloledb.1;password=;persist security=true;user id=sa;initial catalog=test;data source="
cm.ActiveConnection = cn
cm.CommandType = adCmdText
'从指定的数据文件中导入tb1,该文件使用竖杠 (|) 字符作为字段终止符,使用 \n 作为行终止符。
cm.CommandText = "BULK INSERT test.dbo.[tb1] " & _
"From '" & strFile & "'" & _
"WITH " & _
"( " & _
"FIELDTERMINATOR = '|', " & _
"ROWTERMINATOR = '\n'" & _
")"
cm.Execute
Set cm = Nothing
Set cn = Nothing
longfeisoft 2003-09-12
  • 打赏
  • 举报
回复
用SQL SERVER 的 DTS 导入一次,并且保存一个VBS 脚本,以后就可以直接用VB调用执行了。

1,216

社区成员

发帖
与我相关
我的任务
社区描述
VB 数据库(包含打印,安装,报表)
社区管理员
  • 数据库(包含打印,安装,报表)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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