Sql 在运行时获取值
有人能告诉我怎么做吗Sql 在运行时获取值,sql,Sql,有人能告诉我怎么做吗 declare @test varchar(20) set @test ='DatabaseName' select b.* from @test.dbo.Table_Name 这里我从变量中提取数据库,并在查询中使用它 应该这样做吗?使用Exec命令或Sp\u executesql,因为您正在构建动态查询 是否可能重复?取决于我们在这里谈论的是MySQL还是not@AbhijithNayak“返回添加了分隔符的Unicode字符串,以使输入字符串成为有效的SQL
declare @test varchar(20)
set @test ='DatabaseName'
select b.* from @test.dbo.Table_Name
这里我从变量中提取数据库,并在查询中使用它
应该这样做吗?使用
Exec
命令或Sp\u executesql
,因为您正在构建动态查询
是否可能重复?取决于我们在这里谈论的是MySQL还是not@AbhijithNayak“返回添加了分隔符的Unicode字符串,以使输入字符串成为有效的SQL Server分隔标识符”@AbhijithNayak“您可以使用quotename()防止SQL注入”
declare @test varchar(20)
set @test ='DatabaseName'
declare @SQL nvarchar(max)
set @SQL = 'select b.* from '+quotename(@test)+'.dbo.Table_Name as b'
exec (@SQL)