2 回答

TA貢獻(xiàn)1812條經(jīng)驗(yàn) 獲得超5個(gè)贊
按我的思路做的,沒具體測(cè)試,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 --具體查詢語句,調(diào)用該函數(shù),若返回1,向salary表中插入一條記錄(員工表person,員工號(hào)pno)
declare isid int
select isid=check_pno('00001')
if (isid=1)
begin
insert into salary (person,pno) values ('00001','張三')
end

TA貢獻(xiàn)1853條經(jīng)驗(yàn) 獲得超6個(gè)贊
/*我運(yùn)行過了,沒有問題,只是下面插入表時(shí),有多少參數(shù)你自己設(shè)定*/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)
/*我這是舉例你要插入的數(shù)據(jù),具體的你自己決定*/
- 2 回答
- 0 關(guān)注
- 270 瀏覽
添加回答
舉報(bào)