我有兩個鏈接的SQL服務器,我試圖在另一臺服務器上發出更新,但出現錯誤「無法準備聲明」,然後是「必須聲明標量變量「@Shipper_Nbr」」使用參數更新鏈接的SQL服務器
我使用的語法是:
update DBSERVER.DBNAME.DBO.TABLE set Field = @Value WHERE ID = @id
什麼是做這種正確的方法是什麼?
UPDATE:
我嘗試使用一個存儲過程,並得到同樣的結果。另外,我注意到其他信息。語法檢查出來,當我試圖保存存儲過程時,我只會得到錯誤。此外,我注意到錯誤還指出「OLE DB提供程序」SQLNCLI「鏈接服務器」WARSQLVS01「返回消息」延遲準備無法完成「。」
ACK - 我想通了。這是一個單獨的行,我試圖從OPENQUERY select語句中傳遞參數。對於那個很抱歉! : - \
這是一個奇怪的錯誤來獲得,考慮@Shipper_Nbr不會在你提供的代碼顯示出來。有更多可以與我們分享嗎? – 2010-06-30 13:13:20
我試圖保持它的通用性。下面是實際的語句: \t \t UPDATE \t WARSQLVS01.ISS3_AND_DHAM_PROD.dbo.ISS_AND_data_Shipments \t \t SET \t \t Arrive_DT = @Actual_DateTime \t \t WHERE \t Shipper_Nbr = @Shipper_Nbr和 \t \t \t \t CONTAINER_NAME = @Container_Name – Josh 2010-06-30 13:24:35