我正在通过执行 sp_databases 存储过程来检索数据库列表。有什么办法可以从这个列表中排除系统数据库吗?我不想要使用查询SELECT name FROM dbo.sysdatabases where dbid> 6。
谢谢
答案 0 :(得分:1)
sp_databases没有参数。
您唯一能做的就是使用INSERT EXEC模式插入表var,然后从表var中选择并排除要排除的dbs。看起来有点凌乱,你能扩展这个问题的背景吗?
这很有效,但它有点hacky:
create table #t (db_name varchar(255), db_size int, remarks text)
insert #t
exec sp_databases
select * from #t
where db_name not in ('master', 'model', 'tempdb', 'msdb')