クロスサーバー更新を実行しようとしています:
UPDATE asilive.Contoso.dbo.lsipos
SET PostHistorySequencenNmber = (
SELECT TransactionNumber
FROM Transactions
WHERE Transactions.TransactionDate =
asilive.CMSFintrac.dbo.lsipos.TransactionDate)
エラーが発生します:
Server: Msg 117, Level 15, State 2, Line 5
The number name 'asilive.Contoso.dbo.lsipos' contains more than
the maximum number of prefixes. The maximum is 3.
何を与える?
注:クエリを読みにくい結合形式に再配置します。
UPDATE asilive.Contoso.dbo.lsipos
SET PostHistorySequenceNumber = B.TransactionNumber
FROM cmslive.Contoso.dbo.lsipos A
INNER JOIN Transactions B
ON A.TransactionDate = B.TransactionDate
エラーになりません。
こちらもご覧ください
- SQL Server エラー: プレフィックスの最大数。最大は 3 です。結合構文
を使用 (結合構文を扱います。この質問はサブ選択構文を扱います)