INSERT INTO比较来自2个数据库的表

时间:2014-04-28 19:21:46

标签: sql-server tsql insert

我希望比较同一服务器上2个数据库中的2个表,并将该数据插入第3个表。我认为这很容易,但我不知道如何使用2个数据库。 SQL Server不喜欢下面的代码。任何帮助都会很棒。

INSERT INTO WaterAccounts (CaseNumberKey, MASTER_ACCOUNT, 
                            OWNER_NAME, MAIL_NAME, ACCT_BALANCE)
   SELECT 
      B.CaseNumberKey, 
      C.MASTER_ACCOUNT, 
      C.OWNER_NAME, 
      C.MAIL_NAME, 
      C.ACCT_BALANCE
   FROM 
      newCityCollection.PropertyInformation B, DEM C
   WHERE 
      B.Name = C.SERV_STREET 
      AND B.DIRECTION = C.SERV_DIRECTION 
      AND B.NUM = C.SERV_STREET_NO

1 个答案:

答案 0 :(得分:1)

如果newCityCollection是其他数据库,并且PropertyInformation中包含该表,则表示您缺少模式名称。假设它是dbo(可能是),你应该写下这样的东西:

   INSERT INTO WaterAccounts (CaseNumberKey, MASTER_ACCOUNT, OWNER_NAME, MAIL_NAME, ACCT_BALANCE)
   SELECT 
      B.CaseNumberKey, C.MASTER_ACCOUNT, C.OWNER_NAME, 
      C.MAIL_NAME, C.ACCT_BALANCE
   FROM newCityCollection.dbo.PropertyInformation B
   INNER JOIN DEM C
      ON B.Name = C.SERV_STREET 
        AND B.DIRECTION = C.SERV_DIRECTION 
        AND B.NUM = C.SERV_STREET_NO