0
2つのテーブルを作成しようとしていますが、1つのテーブルのキーが別のテーブルのキーになっています。ここに私の創造したコードです。Android SQLite、データベースの複数のテーブル、カラムが作成されていない
private static final String MESSAGE_TABLE_CREATE =
"CREATE TABLE " + MESSAGE_HISTORY + " (" +
MSG_ID + " INTEGER PRIMARY KEY AUTOINCREMENT, " +
TASK_ID + " INTEGER, " +
RECEIVER + " TEXT, " +
SENDER + " TEXT, " +
CHAT_MSG + " TEXT, " +
SHOWUTCDATE + " TEXT, " +
FLAG + " TEXT, " +
NEWTIMESTAMP + " TEXT, " +
LAT + " TEXT, " +
LON + " TEXT, " +
IMAGE_URL + " TEXT, " +
DESTINATION + " TEXT, " +
ATTACHMENT_ID + " TEXT, " +
MIME + " TEXT, " +
SIZE + " TEXT, " +
EXTENSION + " TEXT, " +
IS_ACCEPTED + " TEXT, " +
USER_ID + " TEXT " +
")";
private static final String VENDOR_TABLE_CREATE =
"CREATE TABLE " + VENDORS + " (" +
VENDOR_ID + " INTEGER PRIMARY KEY, " +
TASK_ID + "INTEGER, " +
RECEIVER + " TEXT, " +
SENDER + " TEXT, " +
VENDOR_NAME + " TEXT, " +
VENDOR_CONTENT + " TEXT, " +
VENDOR_STAR + " TEXT, " +
VENDOR_ADDRESS + " TEXT, " +
VENDOR_COMMENTS + " TEXT, " +
VENDOR_DISTANCE + " TEXT, " +
MOBILE + " TEXT, " +
PHONE + " TEXT, " +
LAT + " TEXT, " +
LON + " TEXT, " +
JUDESAYS + " TEXT " +
")";
public TasksDBOpenHelper (Context context){
super(context, DATABASE_NAME, null, DATABASE_VERSION);
}
@Override
public void onCreate(SQLiteDatabase db){
db.execSQL(CURRENT_TABLE_CREATE);
db.execSQL(HISTORY_TABLE_CREATE);
db.execSQL(MESSAGE_TABLE_CREATE);
db.execSQL(VENDOR_TABLE_CREATE);
}
何らかの理由で、ベンダーのテーブルで「TASK_ID」列が作成されていません。
感謝すべきであり、私の人生の2時間 –
@AdamKatz、問題ありませんが:)そこに行きます。あなたはそれを答えとしてマークできますか? –
私はちょうど義務的な時間が経過するのを待っていた –