2016-05-06 23 views
1

私はRAISEのselectステートメントを使ってエラーの説明を取得しようとしていますが、動作しません。ここに私のコード:RAISE sqliteの中のSELECTステートメント

CREATE TRIGGER fetch_survey_list INSERT ON surveylst_offline_info 
BEGIN 
    SELECT CASE 
     WHEN ((SELECT van from surveylst_offline_info WHERE van = new.van) IS NOT NULL) 
     THEN 
     RAISE (FAIL, SELECT error_des FROM ErrorTable WHERE error_id = 1;) 
    END; 
END; 

TIA!

+0

は、 [トリガー自体](http://www.sqlite.org/lang_createtrigger.html)にはWHEN句を付けることができます。 –

答えて

0

RAISE()のエラーメッセージはSQL式ではなく、という名前(テーブルまたは列名など)です。エラーを特定'このescape namesへの有効なメカニズムが、最も基本的な使い方は、プレーン名(およびないメッセージ)を使用することですので、動作するように起こる'単一引用符で囲んだ文字列を指定:

... RAISE(FAIL, error_1) ... 
関連する問題