我有一个变量来保存我正在处理的数据库。如何在静态查询中添加此变量?
这就是我想要实现的目标:
if exists(select * from @DestinationDB.[RaPa] where tid = @dyid)
begin
RAISERROR('Rapa exist',16,1)
end
答案 0 :(得分:0)
我不确定你的意思是没有动态SQL ...但是这里 动态SQL < / p>
declare @DestinationDB varchar(64)
declare @dyid int
declare @sql varchar(max)
set @DestinationDB = 'SomeDB'
set @dyid = 14
set @sql =
'if exists(select * from ' + quotename(@DestinationDB) + '.[RaPa] where tid = ' + cast(@dyid as varchar(16)) + ')
begin
RAISERROR(''Rapa exist'',16,1)
end'
print @sql
--exec(@sql)
当您对命令感到满意时,只需取消注释exec部分。