Thank you, Borislav. I have never used sp_executesql SP. I will Google and read about it.
>When I use dynamic sql and have WHERE clause I prefer to use sp_executesql SP. That way you avoid SQL Injections:
>
>declare @cSecondDb as Varchar(100)
>DECLARE @sql nvarchar(200)
>declare @Category as Varchar(25);
>set @Category = '1009F'
>set @cSecondDb = 'SecondSQLDatabase'
>SET @sql = 'select * from '+@cSecondDb+'..mytable where Category = @Category'
>EXEC sp_executesql @sql, N'@Category varchar(25)', @Category = @Category
>
>
>>Hi,
>>
>>I am testing the SQL Select with a name of the database not current.
>>This case works:
>>
>>use [FirstSQLDatabase]
>>go
>>select * from SecondSQLDatabase..mytable where 1=1
>>
>>
>>Now I want to put the 'SecondSQLDatabase' into a variable. Here is how I do it:
>>
>>use [FirstSQLDatabase]
>>go
>>declare @cSecondDb as Varchar(100)
>>set @cSecondDb = 'SecondSQLDatabase'
>>select * from @cSecondDb..mytable where 1=1
>>
>>
>>The above produces syntax error.
>>
>>What am I missing?
>>TIA
"The creative process is nothing but a series of crises." Isaac Bashevis Singer
"My experience is that as soon as people are old enough to know better, they don't know anything at all." Oscar Wilde
"If a nation values anything more than freedom, it will lose its freedom; and the irony of it is that if it is comfort or money that it values more, it will lose that too." W.Somerset Maugham