声明列名的标量变量 [英] Declaring scalar variable for column name
本文介绍了声明列名的标量变量的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
declare @ColumnName varchar
declare @Value varchar
set @ColumnName='Some Column Name'
set @Value='Some value'
select * from Table_Name Where @ColumnName=@Value
我正在如上所述创建存储过程.这样我就可以传递列名和后面代码中的值.
在此之前,我做了一个测试:
1.声明列名称和值
2.在数据库中设置列名和值
3.从上面的表名称中选择
我没有收到错误,但没有检索到任何数据.
但是列名和值是正确的.
I am creating a stored procedure as above. So that I can pass the column name and also value from the code behind.
Before that I made a test:
1. Declared the column name and value
2. Set both Column name and value as in database
3. Selected from table name as above
I am not getting errors but No data is retrieved.
But the column name and value are correct.
推荐答案
我尝试了这一点,并且工作正常..
I tried this and working fine..
declare @ColumnName varchar(20)
declare @Value varchar(20)
set @ColumnName='Some Column Name'
set @Value='Some value'
print @ColumnName
print @Value
select * from Student_mst Where '+ @ColumnName +' = '''+ @Value + '''
declare @query nvarchar(100)
set @query= 'select * from Student_mst Where '+ @ColumnName +' = '''+ @Value + ''''
print @query
--select * from mytablename Where name = 'RWERWRWE'
谢谢
Ashish
如果可以解决,请将其标记为答案.
Thanks
Ashish
mark it answer if it is a solution.
朋友....
请提及varchar的大小.
Hi Friend....
Please mentioned the size of varchar.
declare @ColumnName varchar(30)
declare @Value varchar(30)
这两种解决方案都是正确的,您可以参考更多.
Transact-SQL变量 [
Both solutions are correct for more you can refer.
Transact-SQL Variables[^] which gives you details of declaring aTransact-SQL
Variable
这篇关于声明列名的标量变量的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文