使用android sqlite将数据插入具有相同生成唯一id的两个表中
我试图将数据插入到两个表中,表1中生成了唯一id,并在表2中使用生成唯一id 例如: 我想在表1和表2中插入emp_no和emp_name。在表1中插入雇员编号后,它将自动生成该行的id。需要使用此id在表2上输入雇员名称使用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
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