在sql中将数据从一个表插入到下一个表中

时间:2013-08-17 02:39:53

标签: asp.net sql-server

我有两个包含字段的表格如下所示: -

tbl_emp - > id(自动生成,自动增量,主键),名称,dob tbl_login - > id(指tbl_emp中的id,主键),密码

我有一个网页表格,其中包含姓名,密码和出生日期(dob)以及提交按钮。按下提交按钮,数据将插入第一个表,也插入第二个表。如果我有办法从第一个表中访问“id”字段,那么将数据插入第二列会很容易。

我的查询是: -

insert into tbl_emp (name,dob) values(@name, @dob);
insert into tbl_login (id,password) values((select id from tbl_emp where id=(select id from tbl_emp where id=id)), @password)

我遇到的问题是:

Subquery returned more than 1 value. This is not permitted when the subquery follows =, !=, <, <= , >, >= or when the subquery is used as an expression.
The statement has been terminated.

1 个答案:

答案 0 :(得分:0)

您可以使用SCOPE_IDENTIY功能:

insert into tbl_emp (name,dob) values(@name, @dob);

insert into tbl_login (id,password) 
select id, @password 
from   tbl_emp 
where  id = SCOPE_IDENTITY();