我有一个存储过程,会从一个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
任何帮助,将不胜感激。