I\'ve got this t-sql snippet:
DECLARE @db_name varchar(255);
SET @db_name = \'MY_DATABASE\'; -- assuming there is database called \'my_database\'
USE @db_nam
As you have noticed, the USE
statement does not accept a variable as parameter. The only alternative that quickly comes to mind is quite crude and extremely error prone, but here you go:
EXEC ('USE ' + @db_name + '
SELECT * FROM some_table
INSERT INTO some_table VALUES (1)')
I hope that someone else can do better :-)