Android 创建触发器时遇到的问题
我正在创建触发器,但出现以下错误: android.database.sqlite.SQLiteException:near CREATE:syntax error:CREATE TRIGGER fk\u item\u place在插入之前创建表项\u PlaceIDfk INTEGER、ItemID NTEGER、外键PlaceIDfk REFERENCES place\u TablePlace\u ID ON DELETE CASCADE外键ItemID REFERENCES ContentTableContentID;对于每一行,从Place_ID=new的Place_表中选择Place_ID时开始选择CASE。PlaceIDfk为空,然后引发中止,“外键冲突”结束;结束 我的代码是:Android 创建触发器时遇到的问题,android,sqlite,Android,Sqlite,我正在创建触发器,但出现以下错误: android.database.sqlite.SQLiteException:near CREATE:syntax error:CREATE TRIGGER fk\u item\u place在插入之前创建表项\u PlaceIDfk INTEGER、ItemID NTEGER、外键PlaceIDfk REFERENCES place\u TablePlace\u ID ON DELETE CASCADE外键ItemID REFERENCES Content
db.execSQL("CREATE TRIGGER fk_item_place " +
" BEFORE INSERT "+
" ON "+ Item_places +
" FOR EACH ROW BEGIN "+
" SELECT CASE WHEN ((SELECT "+ PlaceID +" FROM "+ PlaceTable +" WHERE "+ PlaceID +"=new." + place_id + " ) IS NULL)"+
" THEN RAISE (ABORT,'Foreign Key Violation') END ;" +
" END ;");
我做错了什么?不能使用创建表触发器。确保Item\u places是表名,而不是DDL。谢谢你,so0000000000000我错了,表名实际上是Item\u places,所以我将其编码为Item_places@kshf_x你能把Mat的答案标为正确答案吗?!