ACCESS数据库子查询的问题,急,在线等待 (100分)

  • 主题发起人 主题发起人 一成
  • 开始时间 开始时间

一成

Unregistered / Unconfirmed
GUEST, unregistred user!
职工表worker
id
name
deptid
...

部门表dept
deptid
deptname

现向数据库插入一条记录
insert into worker(name,deptid) values('张三',(select deptid from dept where deptname='销售部'))
编译后运行出错,提示未指定错误,而去掉括号
insert into worker(name,deptid) values('张三',select deptid from dept where deptname='销售部')
则提示语句出错
不用子查询一切正常insert into worker(name,deptid) values('张三',3)

请问刚刚的语句怎么写才能正确?



 
呵呵,不要放在一个SQL语句里。
insert into worker
select * from ....
这样是可以的,只要结构相同
 
要不分開來寫算了﹗
哈哈
 
我想一句来实现,请问如何做
 
可以。

insert into worker(name,deptid) (select '张三', deptid from dept where deptname='销售部')
不能用Values关键字了。

 
更精确一点儿。

insert into worker(name,deptid)
select '张三'as name, deptid from dept where deptname='销售部'
 
谢谢大家,我刚刚试了一下chinaplate和Puma Wang给的语句,确实可行
这语句我过去没用过,还不太懂,我参照你们的语句,再加上个职务表,不知道怎么写了

insert into worker(name,dept,duty) select "张三",deptid from dept where deptname="人事部",dutyid from duty where dutyname="销售主任";

上面的行不通,不知正确的写法是什么??请赐教!
 
insert into worker(name,dept,duty)
select "张三",dept.deptid,duty.dutyid from dept,duty
where dept.deptname="人事部" and duty.dutyname="销售主任";
 
多人接受答案了。
 
后退
顶部