读书人

《〈〈Sql有关问题〉〉》

发布时间: 2012-02-23 22:01:36 作者: rapoo

《〈〈Sql问题〉〉》
我的存储过程是这样的
CREATE PROCEDURE GetCardByNumber
@CardNumber nvarchar(255)
AS
DECLARE @sql NVARCHAR(2000)

set @CardNumber = ' ' ' ' + replace(@CardNumber, '. ', ' ' ', ' ' ') + ' ' ' '

SET @sql = 'select * from CardTable where CardNumber in ( ' + @CardNumber + ') '
exec @sql
GO

等我一运行的时候就报错:未能找到存储过程 'select * from CardTable where CardNumber in ( '226026275526 ') '。

请帮忙分析一下是那出错了。谢谢

[解决办法]
declare @CardNumber varchar(50)
DECLARE @sql NVARCHAR(2000)
set @CardNumber= '1.2.3.4 '
set @CardNumber = ' ' ' ' + replace(@CardNumber, '. ', ' ' ', ' ' ') + ' ' ' '
select @CardNumber
SET @sql = 'select 1 where ' ' '+ '1 '+ ' ' ' in ( ' + @CardNumber + ') '
exec (@sql)

-----> 这样都可以查到阿

读书人网 >asp.net

热点推荐