使用android sqlite将数据插入具有相同生成唯一id的两个表中

使用android sqlite将数据插入具有相同生成唯一id的两个表中,android,sqlite,Android,Sqlite,我试图将数据插入到两个表中,表1中生成了唯一id,并在表2中使用生成唯一id 例如: 我想在表1和表2中插入emp_no和emp_name。在表1中插入雇员编号后,它将自动生成该行的id。需要使用此id在表2上输入雇员名称 Table 1 empl_id | empl_no ----------------- 1 | e00001 Table 2 empl_id | empl_name ------------------- 1 | Andy 我想到的是在表1中插入e

我试图将数据插入到两个表中,表1中生成了唯一id,并在表2中使用生成唯一id

例如: 我想在表1和表2中插入emp_no和emp_name。在表1中插入雇员编号后,它将自动生成该行的id。需要使用此id在表2上输入雇员名称

Table 1
empl_id | empl_no
-----------------
1       | e00001

Table 2
empl_id | empl_name
-------------------
1       | Andy
我想到的是在表1中插入emp\u no,然后执行
选择
以获取最后一行以检索emp\u id。然后使用emp\u id插入表2中


有没有更好的办法?它看起来效率很低,因为每次插入数据都需要从表中选择
以获得生成的唯一id。

如果在表1中将
员工id定义为
整型主键
(可以选择使用
自动增量
,但除非明确需要,否则最好不要使用它)这样就不需要额外的SELECT语句了。该方法将返回其值

从:

如果表包含INTEGER主键类型的列,则 列成为ROWID的别名。然后可以访问ROWID 使用四个不同名称中的任何一个,描述了原始的三个名称 或指定给整型主键列的名称。所有这些 名称是彼此的别名,在任何情况下都同样有效 上下文

从Android文档中:

public long insert(字符串表、字符串nullColumnHack、ContentValues)
返回新插入行的行ID,如果发生错误,返回-1