我正在我的 android 应用程序中创建表格。我希望在删除交货单记录时删除此照片表的记录。
此 SQL 运行,但不包含约束:
照片表:
CREATE TABLE photos (
_id INTEGER PRIMARY KEY,
orderid INTEGER ,
uri TEXT ,
datetime TEXT ,
lattitude REAL ,
longitude REAL ,
FOREIGN KEY ( orderid )
REFERENCES deliveryorder ( _id ) )
但是当我添加约束时,我得到一个语法错误“靠近 CASCADE”
照片表:
CREATE TABLE photos (
_id INTEGER PRIMARY KEY,
orderid INTEGER ,
uri TEXT ,
datetime TEXT ,
lattitude REAL ,
longitude REAL ,
FOREIGN KEY ( orderid ) REFERENCES deliveryorder ( _id ) ON DELETE CASCASDE )
这是错误消息:
06-10 11:09:55.944: E/AndroidRuntime(26269): java.lang.RuntimeException:
Unable to start activity
ComponentInfo{com.pbs.deliverytrack1/com.pbs.deliverytrack1.MainActivity}:
android.database.sqlite.SQLiteException: near "CASCASDE":
syntax error (code 1): , while compiling:
CREATE TABLE photos ( _id INTEGER PRIMARY KEY, orderid INTEGER , uri TEXT , datetime TEXT , lattitude REAL , longitude REAL , FOREIGN KEY ( orderid ) REFERENCES deliveryorder ( _id ) ON DELETE CASCASDE )
我已经搜索了一堆似乎相关的答案,但我找不到解决这个特定问题的答案。我知道这可能很容易,但我没有太多的 SQL 经验。
我正在使用编译指示打开外键。我在 onCreate 和 onOpen 中都使用了编译指示。
数据库版本是 Gingerbread 自带的,所以应该都支持。
显然,我在做一些愚蠢的事情,但无法弄清楚。
在此先感谢您的帮助。