我正在尝试创建一个非常简单的示例,因为我掌握了iPhone App编程。
第一个TableView显示品牌,选择一个将用户带到不同的视图(我可以使用相同的视图来显示模型)来显示模型。 如果显示汽车模型的型号TableView允许用户添加新记录,我如何以及在何处捕获父键(make)的主键(pk)?
我可以捕获主键以及如何捕获哪种方法?
Sqlite数据库:
CREATE TABLE make(pk INTEGER PRIMARY KEY, parentkey INTEGER DEFAULT 0, title TEXT);
INSERT INTO make(title) VALUES('Honda');
INSERT INTO make(title) VALUES('Toyota');
INSERT INTO make(title) VALUES('Mazda');
INSERT INTO make(title) VALUES('Nissan');
INSERT INTO make(title, parentkey) VALUES('Civic', 1);
INSERT INTO make(title, parentkey) VALUES('Accord', 1);
INSERT INTO make(title, parentkey) VALUES('Corolla', 2);
INSERT INTO make(title, parentkey) VALUES('Corona', 2);
答案 0 :(得分:0)
通过SQL,您可以在每次插入后查询SQLITE_SEQUENCE表:
SELECT seq FROM SQLITE_SEQUENCE WHERE name = 'make'
只有在执行插入操作并且在同一事务中进行选择时才能可靠地工作,锁定表,这样在从序列表中获取值之前,没有其他人可以执行插入。
使用API(而不是SQL):
sqlite3_int64 sqlite3_last_insert_rowid(sqlite3*);