1
我可以去這樣如何選擇數據庫中動態
USE SELECT databasename from databasenametable
或類似的東西?
,而不是做選擇,然後投入使用的語句的價值?我嘗試了圍繞選擇的括號,並沒有工作。上述也沒有工作。我不會知道還有什麼如果您正在使用SQL Server做
我可以去這樣如何選擇數據庫中動態
USE SELECT databasename from databasenametable
或類似的東西?
,而不是做選擇,然後投入使用的語句的價值?我嘗試了圍繞選擇的括號,並沒有工作。上述也沒有工作。我不會知道還有什麼如果您正在使用SQL Server做
,USE
聲明應該得到數據庫名稱顯式值:
USE [databasename]
如果你堅持動態做這個的,你可以使用動態SQL:
DECLARE @db AS NVARCHAR(258);
SET @db = QUOTENAME(N'Pubs'); -- put whatever you want here..
EXEC(N'USE ' + @db);
GO
如果您只需要在另一個數據庫中執行一個語句,另一種選擇可能是這樣的:
declare @sql nvarchar(500)
declare @yourDatabaseName nvarchar(50) = 'junk'
declare @yourQuery NVARCHAR(200) = 'select * from someTable'
set @sql = @yourDatabaseName + '..sp_executesql N''' + @yourQuery + ''''
EXEC (@sql)
所以我不能做問什麼IM。我得到了一堆數據庫,我知道基於查詢我想使用哪一個。我想把這個查詢放在我的使用聲明中,而不是給它一個明確的值 – dwarf
@ user2070677 - 看我的編輯 –