在SQL Server 中执行动态 SQL 语句通常可以通过以下几种方式实现:
DECLARE @sql NVARCHAR(MAX)
SET @sql = 'SELECT * FROM TableName WHERE ColumnName = @value'
EXEC sp_executesql @sql, N'@value NVARCHAR(50)', @value = 'somevalue'
DECLARE @sql NVARCHAR(MAX)
SET @sql = 'SELECT * FROM TableName WHERE ColumnName = ''somevalue'''
EXEC (@sql)
需要注意的是,动态 SQL 语句在执行时可能存在 SQL 注入的安全风险,因此在构建动态 SQL 语句时需要谨慎处理输入参数,确保不会受到恶意注入攻击。