存储过程的参数类型为varchar不能自动增长
我的存储过程的参数为varchar,但长度不能自动增长,超过长度就截取了,实际变成了char。有什么方法可以使长度自动增长?谢过
--过程
create proc test_proc @code varchar(5)
as
select @code
--调试
exec test_proc '123456'
--输出
--12345
------解决方案--------------------那你就把长度放大一点, 估算一下,比如放到varchar(30),60,etc
------解决方案--------------------varchar(5)就定义长点嘛
------解决方案--------------------ALTER PROC TEST_PROC @CODE VARCHAR(MAX)
AS
SELECT @CODE
------解决方案--------------------varchar可以定义足够长,实际使用的长度看实际的字符串长度。但是如果将一个长度大于varchar定义时指定的长度时,就会截断。可以这么说,varchar具有自动缩短的功能,但不能自动加长。
------解决方案--------------------自增长不是这么理解的