在sql中设置参数,查询不工作
我这里有这个代码:在sql中设置参数,查询不工作,sql,tsql,Sql,Tsql,我这里有这个代码: DECLARE @inputform varchar SET @inputform = 'J61807017B' SELECT * FROM test where text1 LIKE '@inputform' 这不会给我期望的输出,但当我这样做时,它会起作用: DECLARE @inputform varchar SET @inputform = 'J61807017B' SELECT * FROM test where text1 LIKE 'J61807017B'
DECLARE @inputform varchar
SET @inputform = 'J61807017B'
SELECT * FROM test where text1 LIKE '@inputform'
这不会给我期望的输出,但当我这样做时,它会起作用:
DECLARE @inputform varchar
SET @inputform = 'J61807017B'
SELECT * FROM test where text1 LIKE 'J61807017B'
有什么想法吗?使用变量时,需要指定变量的大小并删除引号:
DECLARE @inputform varchar(20)
SET @inputform = 'J61807017B'
SELECT * FROM test where text1 = @inputform
-- or text1 like '%'+ @inputform +'%' if you want to do partial matching
如果未指定char/varchar值的大小,则大小将为1
从手册中:
在数据定义或变量声明中未指定n时
语句,默认长度为1
您是否尝试过不使用周围的单引号<代码>从测试中选择*,其中文本1如@inputform@ccheneson,是但仍然为空