2 回答
TA贡献1812条经验 获得超5个赞
按我的思路做的,没具体测试,CREATE FUNCTION check_pno (@pno varchar(20))
RETURNS int
AS
BEGIN
DECLARE @ISid int
IF (EXISTS (SELECT * FROM 员工表 WHERE pno = @pno))
begin
set @ISid=1
end
else
begin
SET @ISid=-1
end
RETURN(@ISid)
END --具体查询语句,调用该函数,若返回1,向salary表中插入一条记录(员工表person,员工号pno)
declare isid int
select isid=check_pno('00001')
if (isid=1)
begin
insert into salary (person,pno) values ('00001','张三')
end
TA贡献1853条经验 获得超6个赞
/*我运行过了,没有问题,只是下面插入表时,有多少参数你自己设定*/create function check_pno(@pno char(6)) /*注意这里的@pno类型要与你员工表的pno 类型一致*/
returns integer
as
begin
declare @num int
if exists (select pno from 员工表
where pno=@pno)
select @num=1
else
select @num=-1
return @num
enddeclare @num int
select @num=dbo.check_pno('000008')
if @num=1 insert into salary values('000008',2005,2,2399,230,12.4)
/*我这是举例你要插入的数据,具体的你自己决定*/
- 2 回答
- 0 关注
- 198 浏览
添加回答
举报