2016-07-06 13 views
1

私は単にプロシージャを呼び出すderbyでトリガを作成しようとしています。ストアドプロシージャは何も変更せず、パラメータも取得しません。これは、時間がある間隔内にあることを単に確認するだけです(たとえば、08:00から16:00の間)。トリガを作成すると、次のエラーが表示されます。 "42Z9D:SQLデータを変更するプロシージャは、BEFOREトリガでは許可されていません。 しかし、手順で変更はありません。変更しないderbyプロシージャ

+0

あなたが発行した**正確な 'CREATE PROCEDURE'コールは何でしたか?参照してください:https://db.apache.org/derby/docs/10.12/ref/rrefcreateprocedurestatement.html –

+0

ありがとうブライアンリンクは非常に有用だった。 – Pat928

答えて

1

プロシージャを定義するときに、プロシージャがデータを変更するかどうかを指定する必要があります。任意のSQLを実行するかどうか。上記でBryanが提供したリンクで述べたように、私はオプションを1つ使用する必要があります: {NO SQL | SQLデータを変更する| CONTAINS SQL | READS SQL DATA} このオプションを使用しない場合、デフォルト値はCONTAINS SQLとみなされます。

関連する問題