在SQLite中将SQL数据插入到链接(外键)表中

时间:2010-10-22 13:33:28

标签: database sqlite

我有两个由外键链接的表。例如:

  

“CREATE TABLE 1(id INTEGER PRIMARY KEY,data REAL,time TEXT NOT NULL DEFAULT(datetime('now')));”

     

“CREATE TABLE 2(id INTEGER PRIMARY KEY,parent INTEGER,CONSTRAINT fc_two FOREIGN KEY(parent)REFERENCES one(id));”

所以我想使用嵌入式JOIN进行INSERT INTO,但我已经尝试过(然后用Google搜索)并且显然它不起作用。我确实找到了一种方法来使用名为@@ Identity的东西,但这似乎不适用于SQLite。基本上,我需要:

  1. 将数据插入一个
  2. 为刚刚插入
  3. 的行找到“id”的值
  4. 使用我从一个
  5. 获得的id值将数据插入两个

    1和3很容易,但要获得2我需要查询我刚插入的那个。没有任何数据列(除了id)是唯一的,并且一个唯一的组合(所有非id列的集合作为一个整体是唯一的,而不是任何单个列)是不可能可靠地查询。

    执行此操作的最佳方法是什么?

1 个答案:

答案 0 :(得分:6)

SELECT last_insert_rowid()