我有个办法,就是用代码写出到文本文件中,再读文本文件写入到数据库。
贴份代码给你,根据需要修改后,复制在命令窗口执行就行了
注意:执行这代码需要时间,不要重复点执行按钮,只要点一次就好,然后想看进度,看数据库数据就好了
把数据库导入到文本
Dim cmd As New SQLCommand
cmd.ConnectionName="要移动数据源"
cmd.CommandText = "SELECT * Fro m 需要移动的表名"
For Each dr As DataRow In cmd.ExecuteReader().DataRows
FileSys.WriteAllText(ProjectPath & "Attachments/temp.txt",dr("字段名1") & "," & dr("字段名2") & "," & dr("字段名3") & ";" ,True, Encoding.Default)
Next
在另一个数据源建表
Dim cmd As New SQLCommand
cmd.ConnectionName="要写入的数据源"
cmd.CommandText = "CREATE TAB LE 表名(字段名1 VARCHAR(255),字段名2 VARCHAR(255),字段名2 VARCHAR(255))"
cmd.ExecuteNonQuery()
读文本批量写入到新数据源
Dim contents As String =FileSys.ReadAllText(ProjectPath & "Attachments/temp.txt",Encoding.Default)
Dim cmd As New SQLCommand
cmd.ConnectionName="要写入的数据源"
For Each item As String In contents.split(";") '分割后循环
Dim child() = item.Split(",") '再次分割
cmd.CommandText = "Insert In to 表名(字段名1,字段名2,字段名3) Values('" & child(0) & "','" & child(1) & "','" & child(2) & "')"
cmd.ExecuteNonQuery()
Next
[此贴子已经被作者于2018/4/14 14:41:20编辑过]