本地远程数据库都用的是SQL2005。本地数据表比远程数据表多了一个字段,多的这个字段是从程序传递过来的变量,除了这个字段外,其他的字段名称什么的都是一样的。用下面方法
insert Table select * from openquery(room_link,'select * from DataBase.dbo.Table')
提示:列名或所提借助值的数目与表定义不匹配。
如何把传过来的变量也用上面的语句一块插入到本地表中?
或者有什么别的方法?openquery是不是只能两个数据结构完全相同的表进行同步?

解决方案 »

  1.   

    我改成这样的语句,没有加那个多出的字段
    insert BWSet select ID,bwType,BlackWhiteStr,BlackChStr from openquery(room_link,'select ID,bwType,BlackWhiteStr,BlackChStr from monitorplatform.dbo.BWSet')
    还是出现:插入错误,列名或所提供值的数目与表定义不匹配已经对应起来了,还是报错。
      

  2.   

    insert BWSet (ID,bwType,BlackWhiteStr,BlackChStr) select ID,bwType,BlackWhiteStr,BlackChStr from openquery(room_link,'select ID,bwType,BlackWhiteStr,BlackChStr from monitorplatform.dbo.BWSet')