我正在使用python 3.5下的sqlite3库。
我已经定义了两个表,通过外键相关,具有以下结构:
表1结构:
'Table1_ID' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT UNIQUE
'Name' TEXT
表2结构:
'Table2_ID' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT UNIQUE
other fields
'NameID' INTEGER NOT NULL, FOREIGN KEY(`NameID`) REFERENCES table_1 ( Table1_ID )
然后我想在Table1上添加一条记录,然后在Table2上添加一条记录,该记录引用刚刚插入Table1中的记录。步骤将是:
使用INSERT查询向Table1添加记录 - 数据库引擎将自动分配一个唯一的Table1_ID整数
以某种方式读取Table1_ID值,比如Table1_ID = 821
使用INSERT查询向Table2添加记录,其中我指定NameID = 821
现在,我的问题是关于实施第2步的最有效方法。 一个显而易见的选择是执行" SELECT"查询将光标放在刚插入的记录上,然后读取其Table1_ID值。
但是我想知道是否有另一种方法可以在INSERT记录之后知道Table1_ID juts而不必执行第二个查询。