【发布时间】:2016-05-22 19:40:52
【问题描述】:
我有两个现有的表,workTable 和 table_jobs。我想更新我的 workTable 并使用默认值创建与 table_jobs 的关系。这是我尝试过的:
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
switch (oldVersion){
case 3:{
int jobid = insertJobWithoutClosing(new Job("Default", Color.rgb(0, 0, 255)), db);
db.execSQL("ALTER TABLE " + workTable + " ADD COLUMN " + colJobID + " INTEGER DEFAULT " + jobid + " FOREIGN KEY("+colJobID+") REFERENCES "+table_jobs+"("+job_ID+")");
}
}
这给了我以下例外:
android.database.sqlite.SQLiteException: near "FOREIGN": syntax error (code 1): , while compile: ALTER TABLE WorkObjects ADD COLUMN JobID INTEGER DEFAULT 1 FOREIGN KEY(JobID) REFERENCES Jobs(jobsID)
怎么了?
【问题讨论】:
标签: android sqlite foreign-keys relationship alter-table