我正在编写一个有两个表的Android应用程序:
String createQuery1 =
"CREATE TABLE " + TABLE_NAME_TRIP + " (" + IDTRIP_COLUMN + " INTEGER PRIMARY KEY, "
+ DATE_COLUMN + " TEXT)";
String createQuery2 =
"CREATE TABLE " + TABLE_NAME_GPS + " (" + IDGPS_COLUMN + " INTEGER PRIMARY KEY, "
+ ID_TRIP_COLUMN + " INTEGER DEFAULT 0, "
+ DISTANCE_COLUMN + " INTEGER DEFAULT NULL, "
+ LATITUDE_COLUMN + " REAL DEFAULT NULL, "
+ LONGITUDE_COLUMN + " REAL DEFAULT NULL)";
我希望第二个表中的 ID_TRIP 始终与第一个表中的IDTRIP具有相同的值。
是否可以链接两列以使它们始终相同?
目标应该是以下内容;
Table Trip Table GPS
Trip Date ID Trip distance ...
1 xxx 1 1 xxx
2 xxx 2 1 xxx
3 xxx 3 1 xxx
4 2 xxx
5 2 xxx
6 3 xxx
点击按钮可增加行程,GPS数据每x秒自动进入。现在,我希望通过在点击按钮时递增GPS表中的 TRIP_ID 列,将GPS数据映射到当前行程。
答案 0 :(得分:2)
你需要有约束力。(我希望这就是你要找的东西)
String createQuery2 =
"CREATE TABLE " + TABLE_NAME_GPS + " (" + IDGPS_COLUMN + " INTEGER PRIMARY KEY, "
+ ID_TRIP_COLUMN + " INTEGER DEFAULT 0, "
+ DISTANCE_COLUMN + " INTEGER DEFAULT NULL, "
+ LATITUDE_COLUMN + " REAL DEFAULT NULL, "
+ LONGITUDE_COLUMN + " REAL DEFAULT NULL,"
+ "CONSTRAINT TRP FOREIGN KEY ( " + ID_TRIP_COLUMN + ")"
+ "REFERENCES " + TABLE_NAME_TRIP + "(" + IDTRIP_COLUMN +")";