获得数据库中的表名:
SELECT * FROM sys.tables where
获得数据库中的视图:
SELECT * FROM sys.views
获得数据库中的表的列名:
SELECT * FROM sys.columns
不过这样你是分不哪列是哪个表的,我是用JOIN来查看的,如:
SELECT t,name table, c.name FROM sys.columns
JOIN sys.tables t ON c.object_id = t.object_id
.object_id 是很有用的,在MS SQL里,有从属关系的对象,子对象的.object_id和父对象的.object_id相同
获得数据库中的所有对象:
SELECT * FROM sys.objects where type=...
U-用户表,S-系统表,P-存储过程,PK-主键,C-约束,F-外键,TR-触发器,V-视图,UQ-不可重复的键,D-默认值,FN-函数,IT-内部表(不知道有什么用),SQ-SERVICE_QUEUE(也不知道)