在存储过程中 :
@Prefix (varchar)
USE_NO (已经在表中的字段,int)
REQUEST_ID 要作为查询出来的字段名;
我要 REQUEST_ID =@Prefix+cast(USE_NO as varchar)这样,能在存储过程中alter成功,但是在执行存储过程中,加参数当@Prefix =‘aa’
就执行不成功,
但@Prefix =‘11’
就执行成功,
为什么呢?
sql int 转换 varchar 后 + 参数(varchar)
答案:2 悬赏:0 手机版
解决时间 2021-01-28 15:24
- 提问者网友:骨子里的高雅
- 2021-01-27 21:38
最佳答案
- 五星知识达人网友:神也偏爱
- 2021-01-27 22:39
@Prefix 本身你定义的就是varchar型,也就是字符串形式,它后面可以直接连接字符或数字型参数。
你仔细看看你给@Prefix 赋值时,所赋值是否写的是字符串形式,如果是赋的是数值形式将其转化为字符形式就ok了,至于后面连接的参数是否为字符串形式都不是很重要的。
你仔细看看你给@Prefix 赋值时,所赋值是否写的是字符串形式,如果是赋的是数值形式将其转化为字符形式就ok了,至于后面连接的参数是否为字符串形式都不是很重要的。
全部回答
- 1楼网友:我住北渡口
- 2021-01-28 00:09
select convert (int,'123456')
或
declare @nv nvarchar(10)
set @nv='123456'
declare @n int
set @n = convert(int,@nv)
print @n
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯