1
私の問題は解決策が必要です。前もって感謝します。私はDerby DBを使用します。更新後のトリガー、エラー:スカラーサブクエリは1行だけを返すことができます
私は、1列のテーブルが1つしかありません。私は必要な特定の列の更新後にトリガーを作成しました。行の列を更新しようとすると、このエラーが発生します。
Error code 30000, SQL state 21000: Scalar subquery is only allowed to return a single row.
このエラーは、メインテーブルに2つ以上の行がある場合にのみ表示されます。テーブル "accounts"に1行しかない場合は、すべて正常に動作します。
これはトリガのコードである:(アカウントはメインテーブル、accounts_history新しいテーブルである)
CREATE TRIGGER aft_update AFTER UPDATE of balance,date
ON accounts
FOR EACH ROW MODE DB2SQL
insert into accounts_history
(old_id,new_name,new_balance,new_date) values
(
(select id from accounts),(select name from accounts),
(select balance from accounts),(select date from accounts)
);
おかげで仲間!それはうまく動作します:D –