1.显示所有数据库(非系统创建)
SELECT name FROM master..sysdatabases
WHERE name NOT IN
( 'master', 'model', 'msdb', 'tempdb', 'northwind','pubs')
2.显示某个schema下的表
SELECT table_name FROM information_schema.tables
WHERE table_schema = ? AND table_type = 'base table'
?
为schema名
3.获取表信息
sp_spaceused '?1.?2'
?1
为表所在schema,?2
为表名。
rows
为表记录数
data
为表数据所占大小
index
为表索引所占大小
4.获取视图及其构建语句
SELECT * FROM sys.all_objects a, sys.sql_modules b
WHERE a.is_ms_shipped= 0 AND
a.object_id = b.object_id AND
a.[type] IN ( 'V' ) AND
a.schema_id = (SELECT schema_id FROM sys.schemas
WHERE name = ?
)
?
为schema名
5.查看存储过程
SELECT * FROM sys.all_objects a, sys.sql_modules b
WHERE a.is_ms_shipped= 0 AND
a.object_id = b.object_id AND
a.[type] IN ( 'P' ) AND
a.schema_id = (
SELECT schema_id FROM sys.schemas
WHERE name = ?
)
?
为schema名
6.查看函数
SELECT * FROM sys.all_objects a, sys.sql_modules b
WHERE a.is_ms_shipped= 0 AND
a.object_id = b.object_id AND
a.[type] IN ( 'TF' ) AND
a.schema_id = (
SELECT schema_id FROM sys.schemas
WHERE name = ?
)
?
为schema名
7.查看触发器
SELECT * FROM sys.all_objects a, sys.sql_modules b
WHERE a.is_ms_shipped= 0 AND
a.object_id = b.object_id AND
a.[type] IN ( 'TR' ) AND
a.schema_id = (
SELECT schema_id FROM sys.schemas
WHERE name = ?
)
?
为schema名
8.查看同义词
SELECT * FROM sysobjects
WHERE xtype = 'SN' AND
sysobjects.uid = (
SELECT schema_id FROM sys.schemas
WHERE name = ?
)
?
为schema名
9.查看规则
SELECT * FROM sys.all_objects a, sys.sql_modules b
WHERE a.is_ms_shipped= 0 AND
a.object_id = b.object_id AND
a.[type] IN ( 'R' ) AND
a.schema_id = (
SELECT schema_id FROM sys.schemas
WHERE name = ?
)
?
为schema名
10.查看默认值
SELECT * FROM sys.all_objects a, sys.sql_modules b
WHERE a.is_ms_shipped= 0 AND
a.object_id = b.object_id AND
a.[type] IN ( 'D' ) AND
a.schema_id = (
SELECT schema_id FROM sys.schemas
WHERE name = ?
)
?
为schema名