0

データベースの数量を更新する必要があります。私は更新ステートメントを試しました(トリガーオラクル、間違いなく何かが間違っているため機能しません)

私のSQL文字列は次のとおりです。

String sql1 = "update book set qty = qty - 1 where isbn='" + txt_carr.getText() + "'";  

txt_carr(カートを追加するため)を書き込むtxtFieldですがisbn、その正確な量では変更されませんISBN

また、プログラムを閉じたときにカートで、数量を更新する必要があります (固定でも、たとえば 5)

私はこれを試しました:

String sql3= "UPDATE book SET quantity= 5 (select isbn cart where isbn=) ";  

ここでisbn= カート内のすべての isbn に。したがって、すべてではなく、ショッピング カート内の書籍の数量 (テーブル ブック内) のみを更新する必要があります。

トリガーの方がはるかにうまく機能することは知っていますが、トリガーの書き方がわかりません。

4

2 に答える 2

1

これを試してください:

UPDATE book b   SET b.quantity =
      (SELECT COUNT (*)
         FROM cards c
        WHERE c.isbn = b.isbn) WHERE b.isbn = 'YOUR_ISBN';

したがって、コードは次のようになります。

String sql1= "UPDATE book b SET b.quantity =(SELECT COUNT (*) FROM card c WHERE c.isbn = b.isbn) WHERE b.isbn = '" + txt_carr.getText() + "' "; 

注: テーブル名についてはわかりません。

于 2014-11-17T13:30:14.163 に答える