![](/img/trans.png)
[英]How to pass table name as parameter in select statement in SQL Sever
[英]How to pass column name as parameter in select statement SQL Server
如何在 SQL Server select
語句中將列名作為參數傳遞?
您需要構建查詢以動態執行,但您需要防止 SQL 注入攻擊。 幸運的是,SQL Server 為此提供了QUOTENAME函數。
DECLARE @columnname varchar(50)
SET @columnname = 'MyColumn'
EXEC('SELECT ' + QUOTENAME(@columnname) + ' FROM MyTable')
您可以使用方法:
declare @sql nvarchar(max)
set @sql = 'your dynamic query here'
EXEC(@sql)
請注意,這是不安全的,不建議使用。
創建過程 [dbo].[usp_Load] @tablename VARCHAR(100) AS BEGIN
EXEC('SELECT max(date) AS MaxDate, min(date) AS MinDate from '+@tablename)
結尾
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.