请大家帮忙看看这个过程,那里错!

zhangzhicong 2006-06-17 12:19:32
table :reader
Reader_ID,Reader_name,Gender,special,MaxNumber,Maxtime,pycode
有记录:01,02

CREATE PROCEDURE QueryReader (@strID char(10))
AS
--去除两边的空格
set @strID=rtrim(ltrim(@strID))

select * from reader where reader_Id like '%'+@strID+'%'

if @@RowCount=0 begin
raiserror('没有找到该读者[%s]。',16,1,@strID)
return -1
end
return 1
GO

exec queryreader '0'
返回不了记录
那里错???
帮忙帮忙吧
...全文
79 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhangzhicong 2006-06-17
  • 打赏
  • 举报
回复
谢谢帮忙
可以了
zjcxc 2006-06-17
  • 打赏
  • 举报
回复
char是定长的, 自动补空格, 所以楼主的存储过程中, 单独处理空格的那个不生效
zjcxc 2006-06-17
  • 打赏
  • 举报
回复
或者改用varchar类型定义变量
zjcxc 2006-06-17
  • 打赏
  • 举报
回复
CREATE PROCEDURE QueryReader (@strID char(10))
AS
--去除两边的空格
set @strID=rtrim(ltrim(@strID))

select * from reader where reader_Id like '%'+@strID+'%'

if @@RowCount=0 begin
raiserror('没有找到该读者[%s]。',16,1,@strID)
return -1
end
return 1
GO
CREATE PROCEDURE QueryReader (@strID char(10))
AS
--去除两边的空格
set @strID=rtrim(ltrim(@strID))

select * from reader where reader_Id like '%'+rtrim(@strID)+'%'

if @@RowCount=0 begin
raiserror('没有找到该读者[%s]。',16,1,@strID)
return -1
end
return 1
GO

22,207

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧