根据表名、过程名、视图名查找对应的数据库
2011-10-10 17:14
274 查看
/**************************************** *根据表名、过程名、视图名查找对应的数据库 * *例:sp_find_databasename 'SP_BBSList_Select' * *****************************************/ alter proc sp_find_databasename @findname nvarchar(200) = '' --表名、过程名、视图名 as declare @database_name nvarchar(200) declare @table table(name nvarchar(200)) declare @sql nvarchar(1000) declare @n int if @findname = '' return declare findname cursor for select name from sys.databases --游标取所有数据库名 open findname FETCH NEXT FROM findname INTO @database_name WHILE (@@FETCH_STATUS = 0) begin set @sql = N'select @total = count(1) from '+@database_name + '.dbo.sysobjects where name = '''+ @findname +'''' print @sql exec sp_executesql @sql,N'@total int output',@n output if @n > 0 begin insert into @table values (@database_name) end FETCH NEXT FROM findname INTO @database_name end CLOSE findname DEALLOCATE findname select * from @table
遇到一个蛋疼的问题,刚开始变量名是varchar类型的一直报错,后来查看帮助文档才知道必需要nvarchar类型的
相关文章推荐
- 根据数据库的列名的值查找匹配值所对应的字段
- 如何传值给存储过程中的In条件?(根据多个id查找对应的记录的处理)
- Sql server中根据存储过程中的部分信息查找存储过程名称的方法【视图和Function】
- Sql server中根据存储过程中的部分信息查找存储过程名称的方法【视图和Function】
- 根据数据库文件,查找对应的数据库
- 几个收藏的根据数据库生成Insert语句的存储过程
- sql查询表结构,过程,视图,主键,外键,约束_数据库
- java基础代码----根据日期字符串 查找对应的周期的起始位置和结束位置
- 在数据库中根据经纬度查找数据中所有附近的经纬度点
- SQL查找某个"关键字"在视图、函数、存储过程中存在
- 利用SQL语句查找某数据库中所有存储过程包含的内容
- SQL使用数据库引擎存储过程,系统视图查询,DBA,BI开发人员必备基础知识
- 利用SQL语句查找某数据库中所有存储过程包含的内容(转)
- 如何根据pageNo,pageSize,和index 算出如果pageSize是1的话在数据库中的pageNo(也就是说:算出数据在Grid中的行index所对应DB中的rowNumber )
- 数据库的字符集与排序规则、视图、函数、存储过程
- 根据数据库的表结构的类型返回其对应的简写类型
- sql server查询数据库中所有包含某文本的存储过程、视图和函数的SQL
- sql批量操作数据库,删除表,删除数据库,删除存储过程,删除视图
- orcale 数据库查询同义词,视图,触发器,索引对应的基表
- 查询数据库中所有包含某文本的存储过程、视图和函数的SQL