猿问

是我的代码有问题吗?应该怎么改呀?

问题:
2.Author ( Ano, Name, Age, Sex ) 
Book ( Bno , Title , Publisher )
Write ( Ano , Bno , IsFirstAuthor ),
(2)给定书名,如果此书的作者只有一人,则输出此作者名字,否则返回 NULL(函数)
代码如下:Create function pangduan(@Title char(10)) returns char 
As
Begin
declare @anum int,@Ano char(10),@Name char(10)
select @anum=count(*) from write,book where write.Bno=book.Bno and Title=@Title
if @anum=1
begin
select @Ano=Ano from write,book where write.Bno=book.Bno and Title=@Title
select @Name=Name from author where Ano=@Ano
end
else
begin
set @Name=null
end
return @Name
调用函数的时候,应该返回作者名字的时候,返回了十个空格,应该返回null的时候,返回了一个空格,
end

胡子哥哥
浏览 160回答 1
1回答

SMILET

你的返回类型添加一下长度,returns char 改为 char(10) 看看是不是你想要的,截图是我运行的结果
随时随地看视频慕课网APP

相关分类

SQL Server
我要回答