【发布时间】:2015-02-19 13:09:49
【问题描述】:
我必须将 int 转换为 varchar 并且需要考虑另外一个考虑因素。
例如:
1) 我的字符串长度总是 10 个字符。 (即“0000000001”)
每当我生成一个新 id 时,它都必须递增(即“0000000002”)
当它到达第 10 个字符串时将是“0000000010”等...
我不知道如何实现这一点。
尝试作为第一步。
--Declared variable to increment count
declare @CTR INT
--@LIPRequestID is integer this is what i have to add to my
declare @LIPRequestID int
select @LIPRequestID=0
declare @LIPRequestIDstring varchar(max)
select @ctr=0
WHILE @CTR<2
BEGIN
select @ctr=@ctr+1
select @LIPRequestID=@LIPRequestID+1
select @LIPRequestIDstring='00000000'+ CAST(@LIPRequestID AS VARCHAR(10)
print @LIPRequestIDstring
END
但它抛出以下异常错误:
消息 102,级别 15,状态 1,第 14 行 '@LIPRequestIDstring' 附近的语法不正确。
谁能建议我哪里出错了?
【问题讨论】:
-
为什么需要一个表现得像数字的字符串?为什么不只使用数字而忘记填充的 0?
标签: sql-server sql-server-2008