When I use the script below, everything works fine :
create table MyTable (MyField varchar(5))
insert into Mytable values ('XXX')
declare @MyVar varchar(5)
select @MyVar = MyField
from dbo.MyTable
print @MyVar
But what I would like to do is something like that :
create table MyTable (MyField varchar(5))
insert into Mytable values ('XXX')
declare @MyVar varchar(5)
declare @DataBase varchar(10) = 'DBMyBase'
select @MyVar = MyField
from @DataBase.dbo.MyTable
print @MyVar
I tried with no success :
create table MyTable (MyField varchar(5))
insert into Mytable values ('XXX')
declare @MyVar varchar(5)
declare @DataBase varchar(10) = 'DBMyBase'
declare @cmd varchar(max)
set @cmd = 'select @MyVar = MyField from ' + @DataBase + '.dbo.MyTable'
exec(@cmd)
print @MyVar
I also tried to put the whole script in @cmd, but no way to catch @MyVar value outside the part of script...
Sorry for I don't know how to explain it in English, but thanks for any help if you understood me !