以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]跨库复制表代码怎么改?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=194438)

--  作者:jyh7081
--  发布时间:2024/12/10 10:50:00
--  [求助]跨库复制表代码怎么改?
蓝老师好!下面的代码,如果两个表分别属于Test、Test2数据源,应该怎样修改下面的代码?

1、必须是sqlserver数据库

 

2、

 

Dim tran As System.Data.SqlClient.SqlTransaction
try
    Dim conn As new System.Data.SqlClient.SqlConnection("server=voyo;uid=sa;pwd=hailun.;database=Test")
    conn.Open() \'打开链接
    tran = conn.BeginTransaction()
    Dim mapping1 As new System.Data.SqlClient.SqlBulkCopyColumnMapping("第一列", "第一列")
    Dim mapping2 As new System.Data.SqlClient.SqlBulkCopyColumnMapping("第二列", "第二列")
    Dim copy As new System.Data.SqlClient.SqlBulkCopy(conn, System.Data.SqlClient.SqlBulkCopyOptions.Default, tran)
    Copy.ColumnMappings.Add(mapping1)
    Copy.ColumnMappings.Add(mapping2)
    copy.DestinationTableName = "表D" \'指定服务器上目标表的名称
    copy.WriteToServer(DataTables("表D").basetable)   \'你的datatable名字,执行把DataTable中的数据写入DB
    tran.Commit()                                  \'提交事务
    msgbox("OK")
catch ex As exception
    msgbox(ex.message)
    tran.Rollback()    \'返回False 执行失败!
End try


--  作者:有点蓝
--  发布时间:2024/12/10 10:57:00
--  
把"表D"数据加载进来就行,不需要改代码
--  作者:jyh7081
--  发布时间:2024/12/10 11:19:00
--  
提示报错:

图片点击可在新窗口打开查看此主题相关图片如下:截屏图片.jpg
图片点击可在新窗口打开查看


--  作者:有点蓝
--  发布时间:2024/12/10 11:26:00
--  
2个表的列名不一致,无法对应
--  作者:jyh7081
--  发布时间:2024/12/10 11:30:00
--  
我是导出后再导入建的表~
应该不会错
--  作者:有点蓝
--  发布时间:2024/12/10 11:34:00
--  
错误提示不会骗人的,.net抛出来的提示,说列不匹配,肯定就不匹配。检查列名,列类型