通过名字查找数据库名的通用存储过程
来源:互联网 发布:赛睿xai淘宝 编辑:程序博客网 时间:2024/04/28 23:46
/*
很多时候,我们的sql server有很多数据库,当我们想得知有那些数据库包含有某个表、存储过程、视图、函数名,
例如想知道有那些数据库包含有表'Vender',
可以用下面的存储过程找出来所有包含表、存储过程、视图、函数名字为'Vender'的数据库名字。
*/
use master
go
if exists (select * from sysobjects where name = 'sp_getdbnamefromtb')
begin
print 'drop procedure sp_getdbnamefromtb...'
drop PROCEDURE sp_getdbnamefromtb
end
go
create procedure sp_getdbnamefromtb(@tb_name varchar(50))-- 寻找的表名
as
declare @n int
declare @db_name varchar(50) -- 临时数据库名变量
declare @sql nvarchar(200)
declare @tb_find table(name varchar(50)) --结果存放区
declare v_db_list cursor for select name from sysdatabases
begin
open v_db_list
fetch next from v_db_list into @db_name;
while (@@fetch_status =0)
begin
select @sql = 'select @count = count(1) from '+@db_name +'.dbo.sysobjects where name = ''' + @tb_name +''''
exec sp_executesql @sql,N'@count int out',@n out
if @n > 0
begin
insert into @tb_find(name) values(@db_name);
end
fetch next from v_db_list into @db_name;
end
select * from @tb_find
close v_db_list;
deallocate v_db_list;
end
go
use master
exec sp_getdbnamefromtb 'sysobjects'
go
- 通过名字查找数据库名的通用存储过程
- 压缩数据库的通用存储过程
- 压缩数据库的通用存储过程
- 通用的数据库处理类,通过ADO.NET与数据库连接(存储过程)
- 通用存储过程.查找删除非唯一的记录
- 通用存储过程.查找删除非唯一的记录
- 数据库还原通用存储过程
- 通用的存储过程
- sql数据库中怎么根据存储过程名字,查出存储过程的内容?
- 查找一个server下还有某个表名的数据库名字...
- MYSQL数据库下通用的行转列的存储过程
- MYSQL数据库下通用的行转列的存储过程
- DB2 根据表名查找存储过程
- 邹建:备份还原数据库的通用存储过程
- oracle根据存储过程中内容查找存储过程名
- java 通过存储过程名字 获取存储过程的参数列表,然后自动传参调用sp
- SQL获取数据库的数据库名,表名,存储过程等
- 通用存储过程的编写
- 看来的故事
- 狗狗的作文
- ASP.NET.2.0.in.C.Sharp.2005.From.Novice.to.Professional的读书笔记[4]
- 一个无聊的NullPointerException
- 如何防止SQL入注
- 通过名字查找数据库名的通用存储过程
- 【程序思考】“主动程序员”vs“被动程序员”
- 对酒当歌。
- 用VC获取本机MAC地址
- 【程序思考】 关于“框架”
- 感慨:编写坚固的代码(2)
- 博客开通
- 调用Lua函数
- 感悟生活之-工作