C#asp.netのSQLデータベースの注文+注文ラインに買い物かごを書き込もうとしています。オーダーラインには、バスケット内のすべてのアイテムのオーダー番号、合計価格、製品ID、数量などが含まれます。注文自体には主キーとして注文番号が含まれ、それを介してさまざまな行にリンクされます。昨日はすべて正常に機能しましたが、insert intoステートメントでSELECTコマンドを使用してより動的に処理しようとすると、上記の構文エラーが発生します。
このステートメントの何が問題になっているのか誰かが知っていますか?
INSERT INTO [order]
(klant_id,totaalprijs,btw,subtotaal,verzendkosten)
SELECT klant.id
, SUM(orderregel.totaalprijs)
, SUM(orderregel.btw)
, SUM(orderregel.totaalprijs) - SUM(orderregel.btw)
, 7.50
FROM orderregel
INNER JOIN
klant
ON [order].klant_id = klant.id
WHERE klant.username = 'jerry'
GROUP BY
id;
「order」テーブルの注文番号は自動番号にあり、後ろのaspコードには、すべての製品に書き込まれる行を処理するfor eachがあり、このループの外側に0に設定されたインデックスがあり、そのすべての終わりに1が付けられています。 。オーダーのexecutenonqueryは、最初のループの開始時に1回だけ実行され、その後にMAX(ordernumber)をオーダー番号として行が追加されます。
私は十分な情報を提供し、誰かが私を助けることができることを願っています。前もって感謝します!
編集:このクエリを使用して、みんなに感謝します!
INSERT INTO [order](klant_id、totaalprijs、btw、subtotaal、verzendkosten)SELECT(SELECT klant.id FROM klant WHERE klant.username ='jerry')、
SUM(orderregel.totaalprijs)、SUM(orderregel.btw)、
SUM( orderregel.totaalprijs)-SUM(orderregel.btw)、7.50 FROM
orderregel;