假设我有两个表如下:
CREATE TABLE forms (
id INTEGER PRIMARY KEY,
form_name TEXT,
)
和
CREATE TABLE formsData (
id INTEGER PRIMARY KEY,
formid INTEGER,
data TEXT,
FOREIGN KEY(formid) REFERENCES forms(id)
)
我在表格表中插入了一些数据:
INSERT INTO forms(form_name) VALUES ('form1')
INSERT INTO forms(form_name) VALUES ('form2')
现在我想在第二个表格中添加一些数据:
INSERT INTO formsData(formid,data) VALUES ('XXXXXXXX','data for form1')
INSERT INTO formsData(formid,data) VALUES ('XXXXXXXX','data for form2')
我的问题是找到XXXXXXXX这是具有表格的id字段的外键。有没有办法从formData中添加这个id表格?
答案 0 :(得分:1)
您可以使用last_insert_rowid()
函数来引用先前插入的行ID(主键)。当然,您需要重新排序插入内容:
INSERT INTO forms(form_name) VALUES ('form1');
INSERT INTO formsData(formid,data) VALUES (last_insert_rowid(),'data for form1');
INSERT INTO forms(form_name) VALUES ('form2');
INSERT INTO formsData(formid,data) VALUES (last_insert_rowid(),'data for form2');