日期:2014-05-18  浏览次数:20701 次

请问这是什么原因?
declare 
@name varchar
set @name='123'
select COUNT(1) from Person where PLoginName=@name

这样结果是0

select COUNT(1) from Person where PLoginName='123'

这样结果是1


这是为什么?

------解决方案--------------------
你改为declare @name varchar(10) 试验一下看,是否不指定长度的话,默认就不给分配,就为空了,
你也可以 试着 print @name 看看输出什么值。
用变量和直接写上字符串 应该一样