内容如下:
例如:查询服务器server 上的数据库 king 中的一个表 king1 ,将查询结果插入到本地机器  client 上的数据库 sun 中的一个表 sun1 中。应该如何做?我知道在本地操作数据库的连接和操作,知道单独操作一个数据库的方法,我想知道如何在一条SQL语句中将他们实现。或者用别的办法能够实现,
SQL语句例如:insert into sun1 select * from king1
可是需要连接俩个数据库,因为连接俩个数据库需要俩个连接,我写了俩个连接可是有冲突!

解决方案 »

  1.   

    定义两个链接,两个记录集Dim cn1 As New ADODB.Connection, cn2 As New ADODB.Connection
    Dim rs1 As New ADODB.Recordset, rs2 As New ADODB.Recordsetrs1.Open "select * from table", cn1, adOpenStatic, adLockPessimistic
    rs2.Open "select * from table", cn2, adOpenDynamic, adLockPessimisticFor i = 1 To rs1.RecordCount
        rs2.AddNew
        rs2!field1 = rs1!field1
        rs2.Update
    Next
      

  2.   

    可以用SQL语句直接写呀。如果要在程序里写,就要定义两个连接,两个记录集
      

  3.   

    EXEC sp_addlinkedserver 
       'Test', --名称
       '', 
       'MSDASQL',
       NULL,
       NULL,
       'DRIVER={SQL Server};SERVER=服务器名;UID=sa;PWD=密码;'
    GO
    -------以上为添加连接服务器exec sp_addlinkedsrvlogin 'test','false','sa','sa',''
    然后就可以:
     insert into 另一服务器.数据库..表名 select * from 表名