我有一個表與通配符存儲過程的參數
create table user (userId varchar(8) not null, userName varchar(8) not null)
insert into user
select 'NAME1','name1'
union all
select 'NAME2', 'name2'
union all
select 'NAME3','name3'
我已經爲外卡參數,使用存儲過程:
create procedure wildcard_name
@userName nchar(8)= '%'
as
select * from user
where userName like @userName;
exec wildcard_name 'n%';
exec語句不給予任何結果,爲什麼?
nchar與varchar –
此外,你的插入語句不起作用,你忘記了這些字符串引號,還是這是從'insert/select'改編的?整理也可能起作用 - 如果整理是區分大小寫的,''Nancy'LIKE'n%''將返回false。 –
@Mitch這是一個很好的觀點,但在這種特殊情況下最糟糕的是它會引入隱式轉換,而不會改變結果。 –