1
update invd.InvoiceDetail set invd.costprice=883.75
from InvoiceDetail invd
where saleDespatchDetailID = 5

このクエリでエラーが発生します。

メッセージ 208、レベル 16、状態 1、行 1
無効なオブジェクト名 'invd.InvoiceDetail'。

4

2 に答える 2

4

エイリアスを指定したので、エイリアスを参照するため、コードは次のようになります。

update invd
set invd.costprice=883.75
from InvoiceDetail invd
where invd.saleDespatchDetailID = 5

ただし、テーブルを別のテーブルと結合していないため、エイリアスは実際には必要ありません。

update InvoiceDetail
set costprice=883.75
where saleDespatchDetailID = 5
于 2013-04-01T01:35:06.727 に答える
1

UPDATE更新に参加していないため、基本的なステートメントを直接実行できます。

update InvoiceDetail 
set    costprice = 883.75
where  saleDespatchDetailID = 5

私自身のステートメントの書き方では、以下のように、更新ステートメントでテーブルに参加している場合UPDATEにのみ使用しますFROM

UPDATE a
SET    a.ColumnName = 'a'
FROM   table1 a
       INNER JOIN table2 b
            ON a.PK = b.FK
WHERE  a.Column = 'xxx'
于 2013-04-01T01:35:18.133 に答える