我有一個存儲過程,會從一個SQL Server的所有非系統數據庫的名稱:SQL存儲過程使用服務器名稱的參數?
select name from MySQLServer.master.sys.databases
where name not like ('master')
and name not like ('tempdb')
and name not like ('msdb')
and name not like ('model')
and name not like ('Admin')
我想什麼做的是通過服務器名作爲參數,所以這個存儲過程更具可重用性:
@servername = 'some passed servername'
select name from @servername.master.sys.databases
where name not like ('master')
and name not like ('tempdb')
and name not like ('msdb')
and name not like ('model')
and name not like ('Admin')
可以這樣做嗎?我將如何做到這一點?
我能創建一個變量,如:
DECLARE @serverPointer nvarchar(MAX)
SET @serverPointer = @servername + '.master.sys.databases'
select name from @serverPointer
任何幫助,將不勝感激。