Str函数
在数据库中需要办int转换为字符串,然后和另外一个字符串拼接成新的字符串。
做法是@temStr=@temStr+@num.结构报出nvarchar转换为int类型异常。
原因是把字符串类型转换为int类进行算术运算,于是使用Str函数把int 转换为nvarchar类型。
Str函数语法:
STR ( float_expression [ , length [ , decimal ] ] )
参数说明:
(1)float_expression 可以隐式转换为 float 的表达式
(2)length 总长度,包括小数点、符号、数字和空格。默认值为 10。length 参数必须是一种可以隐式转换为 int 的数据类型。
(3)decimal 小数点右侧的数字位数。decimal 参数必须是一种可以隐式转换为 int 的数据类型。默认值为 0。
返回值说明:nvarchar类型。
declare @num bigint declare @tmpStr nvarchar(max) set @num=22721 set @tmpStr='582598' while @num<22723 begin declare @@tmp2 nvarchar(5) set @@tmp2=(select str(@num,5,0)) print(@@tmp2) set @num=@num+1 set @tmpStr=@tmpStr+','+@@tmp2 print(@tmpStr) end
用于接收返回结果的字符串必须长度和数据长度一样,否者接收不全(在此处走了将近半小时弯路)。
运行结果如下: