在SQL Server 2005中的表名,可以用來區分你指的是哪個表:如何在SQL Server 2000中更新需要「別名」的鏈接服務器表?
UPDATE LinkedServer.database.user.tablename
SET val=u.val
FROM localtable u
WHERE tablename.ID=u.ID
在SQL Server 2000這會導致
服務器:消息107,級別16,狀態2
列前綴'tablename'與查詢中使用的表名或別名不匹配。
試圖
UPDATE LinkedServer.database.user.tablename
SET val=u.val
FROM localtable u
WHERE LinkedServer.database.user.tablename.ID=u.ID
結果
服務器:消息117,級別15,狀態2
數名「LinkedServer.database.user.tablename]包含了更多的最大數量的前綴。最大爲3
,當然,
UPDATE LinkedServer.database.user.tablename
SET val=u.val
FROM localtable u
WHERE ID=u.ID
結果
服務器:消息209,級別16,狀態1
不明確的列名 'ID'。
(事實上,在「數字名稱包含超過最大數量的前綴數目,最大值是3」。我找到了答案,但我已經鍵入了這個問題,我要發佈它:-))
是的,這就是我在這裏找到的http://www.sqlservercentral.com/Forums/Topic171651-9-1.aspx – 2010-05-07 10:34:32