声明列名的标量变量 [英] Declaring scalar variable for column name

查看:68
本文介绍了声明列名的标量变量的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

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 a Transact-SQL Variable


这篇关于声明列名的标量变量的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆