【发布时间】:2014-11-03 11:47:44
【问题描述】:
我有一个 SQL 数据库(本地使用 vb.net),它有一个包含 76 列的表。需要放入这些列的数据采用纯分隔文本文件的形式。我需要构建一个 VB.NET 应用程序,它允许我将文本文件导入数据库中相应列下的表中。有什么办法可以做到这一点吗?
我对 VB.NET 很陌生。有人可以帮我写代码吗?
谢谢! 卡马尔
【问题讨论】:
标签: sql sql-server vb.net
我有一个 SQL 数据库(本地使用 vb.net),它有一个包含 76 列的表。需要放入这些列的数据采用纯分隔文本文件的形式。我需要构建一个 VB.NET 应用程序,它允许我将文本文件导入数据库中相应列下的表中。有什么办法可以做到这一点吗?
我对 VB.NET 很陌生。有人可以帮我写代码吗?
谢谢! 卡马尔
【问题讨论】:
标签: sql sql-server vb.net
如果您有逗号分隔的值:
bulk insert tableName
from 'C:\myfile.txt'
with (fieldterminator = ',', rowterminator = '\n')
go
对于制表符分隔值,请使用:
bulk insert tableName
from 'C:\myfile.txt'
with (fieldterminator = ',', rowterminator = '\n')
go
【讨论】:
76 列?
必须是神表反模式...
Public Sub CopyToDataBase(dt As DataTable)
Using Conn As SqlConnection = New SqlConnection("YOUR_CONNECTION_STRING")
Conn.Open()
Using s As SqlBulkCopy = New SqlBulkCopy(Conn)
s.DestinationTableName = "TableName"
s.WriteToServer(dt)
s.Close()
End Using
Conn.Close()
End Using
End Sub
当然这要求表有一个主键。
【讨论】: