SqlServer 中用declare 一个varchar类型的 要赋初值吗?
发布网友
发布时间:2023-09-24 02:57
我来回答
共2个回答
热心网友
时间:2023-10-03 05:49
你自己说的对,是应该赋值
如下
declare @number int=12436
declare @rc varchar(5) =''--赋一个空值就行,不影响最后结果
declare @midnumber int
declare @ss int=0
declare @i int=1
while(@i<6)
begin
set @midnumber=@number%10
set @number=@number/10
set @rc=@rc+CONVERT(varchar(1),@midnumber)
set @i+=1
--为什么不输出
end
print @rc
追问可以说一下为什么要赋值?
追答不赋值就是null
null+任何东西都为假,所以无输出
单独执行下边这个
select null+1
结果就是null,所以print时就什么都没有
热心网友
时间:2023-10-03 05:49
是的! 这里可以给个空字符串 declare @rc varchar(5)=''