超级有用的SQL语句(分析SQL SERVER 数据库表结构专用)
2010-08-09 17:55
736 查看
超级有用的SQL语句 (用于SQL SERVER 服务器)
超级有用的SQL语句 ,执行后返回的列分别是:表名、列名、列类型、列长度、列描述、是否主键,语句如下:
(分析SQL SERVER 数据库表结构专用)
以下是SQLSERVER2000
--------------------------------------------------------------------------------
Select Sysobjects.Name As 表名,
Syscolumns.Name As 列名,
Systypes.Name As 列类型,
Syscolumns.Length As 列长度,
Isnull(Sysproperties.Value, Syscolumns.Name) As 列说明,
Case
When Syscolumns.Name In
(Select 主键 = A.Name
From Syscolumns A
Inner Join Sysobjects B On A.Id = B.Id
And B.Xtype = 'U'
And B.Name <> 'Dtproperties'
Where Exists (Select 1
From Sysobjects
Where Xtype = 'Pk'
And Name In
(Select Name
From Sysindexes
Where Indid In
(Select Indid
From Sysindexkeys
Where Id = A.Id
And Colid = A.Colid)))
And B.Name = Sysobjects.Name) Then
1
Else
0
End As 是否主键
From Sysobjects, Systypes, Syscolumns
Left Join Sysproperties On (Syscolumns.Id = Sysproperties.Id And
Syscolumns.Colid = Sysproperties.Smallid)
Where (Sysobjects.Xtype = 'U' Or Sysobjects.Xtype = 'V')
And Sysobjects.Id = Syscolumns.Id
And Systypes.Xtype = Syscolumns.Xtype
And Systypes.Name <> 'Sysname'
And Sysobjects.Name Like '%'
Order By Sysobjects.Name, Syscolumns.Colid
--------------------------------------------------------------------------------
以下是SQLSERVER 2005版本的语句
--------------------------------------------------------------------------------
Select Sysobjects.Name As 表名,
Syscolumns.Name As 列名,
Systypes.Name As 列类型,
Syscolumns.Length As 列长度,
Isnull(sys.extended_properties.Value, Syscolumns.Name) As 列说明,
Case
When Syscolumns.Name In
(Select 主键 = A.Name
From Syscolumns A
Inner Join Sysobjects B On A.Id = B.Id
And B.Xtype = 'U'
And B.Name <> 'Dtproperties'
Where Exists (Select 1
From Sysobjects
Where Xtype = 'Pk'
And Name In
(Select Name
From Sysindexes
Where Indid In
(Select Indid
From Sysindexkeys
Where Id = A.Id
And Colid = A.Colid)))
And B.Name = Sysobjects.Name) Then
1
Else
0
End As 是否主键
From Sysobjects, Systypes, Syscolumns
Left Join sys.extended_properties On (Syscolumns.Id = sys.extended_properties.major_id And
Syscolumns.Colid = sys.extended_properties.minor_id)
Where (Sysobjects.Xtype = 'U' Or Sysobjects.Xtype = 'V')
And Sysobjects.Id = Syscolumns.Id
And Systypes.Xtype = Syscolumns.Xtype
And Systypes.Name <> 'Sysname'
And Sysobjects.Name Like 'XJY%'
Order By Sysobjects.Name, Syscolumns.Colid
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/xuejiayue1105/archive/2010/03/12/5374608.aspx
超级有用的SQL语句 ,执行后返回的列分别是:表名、列名、列类型、列长度、列描述、是否主键,语句如下:
(分析SQL SERVER 数据库表结构专用)
以下是SQLSERVER2000
--------------------------------------------------------------------------------
Select Sysobjects.Name As 表名,
Syscolumns.Name As 列名,
Systypes.Name As 列类型,
Syscolumns.Length As 列长度,
Isnull(Sysproperties.Value, Syscolumns.Name) As 列说明,
Case
When Syscolumns.Name In
(Select 主键 = A.Name
From Syscolumns A
Inner Join Sysobjects B On A.Id = B.Id
And B.Xtype = 'U'
And B.Name <> 'Dtproperties'
Where Exists (Select 1
From Sysobjects
Where Xtype = 'Pk'
And Name In
(Select Name
From Sysindexes
Where Indid In
(Select Indid
From Sysindexkeys
Where Id = A.Id
And Colid = A.Colid)))
And B.Name = Sysobjects.Name) Then
1
Else
0
End As 是否主键
From Sysobjects, Systypes, Syscolumns
Left Join Sysproperties On (Syscolumns.Id = Sysproperties.Id And
Syscolumns.Colid = Sysproperties.Smallid)
Where (Sysobjects.Xtype = 'U' Or Sysobjects.Xtype = 'V')
And Sysobjects.Id = Syscolumns.Id
And Systypes.Xtype = Syscolumns.Xtype
And Systypes.Name <> 'Sysname'
And Sysobjects.Name Like '%'
Order By Sysobjects.Name, Syscolumns.Colid
--------------------------------------------------------------------------------
以下是SQLSERVER 2005版本的语句
--------------------------------------------------------------------------------
Select Sysobjects.Name As 表名,
Syscolumns.Name As 列名,
Systypes.Name As 列类型,
Syscolumns.Length As 列长度,
Isnull(sys.extended_properties.Value, Syscolumns.Name) As 列说明,
Case
When Syscolumns.Name In
(Select 主键 = A.Name
From Syscolumns A
Inner Join Sysobjects B On A.Id = B.Id
And B.Xtype = 'U'
And B.Name <> 'Dtproperties'
Where Exists (Select 1
From Sysobjects
Where Xtype = 'Pk'
And Name In
(Select Name
From Sysindexes
Where Indid In
(Select Indid
From Sysindexkeys
Where Id = A.Id
And Colid = A.Colid)))
And B.Name = Sysobjects.Name) Then
1
Else
0
End As 是否主键
From Sysobjects, Systypes, Syscolumns
Left Join sys.extended_properties On (Syscolumns.Id = sys.extended_properties.major_id And
Syscolumns.Colid = sys.extended_properties.minor_id)
Where (Sysobjects.Xtype = 'U' Or Sysobjects.Xtype = 'V')
And Sysobjects.Id = Syscolumns.Id
And Systypes.Xtype = Syscolumns.Xtype
And Systypes.Name <> 'Sysname'
And Sysobjects.Name Like 'XJY%'
Order By Sysobjects.Name, Syscolumns.Colid
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/xuejiayue1105/archive/2010/03/12/5374608.aspx
相关文章推荐
- 超级有用的SQL语句(分析SQL SERVER 数据库表结构专用)
- 数据库 ACCESS与SQL SERVER 2000分页SQL语句 分析
- SQL SERVER性能分析--死锁检测数据库阻塞语句<转>
- 不同数据库sql查询表字段以及结构的语句
- MySQL、SQL Server、Oracle 3种数据库查询表中前N行记录的SQL语句
- 读数据库所有表和表结构的sql语句
- Informix数据表结构分析资料整理之字段类型说明和查询SQL语句
- SQL Server 数据库管理常用的SQL和T-SQL语句
- SQL SERVER性能分析--死锁检测数据库阻塞语句
- SQL Server 数据库管理常用的SQL和T-SQL语句
- 监控SQL:通过SQL Server的DDL触发器来监控数据库结构的变化(1)
- sql语句查询Oracle|sql server|access 数据库里的所有表名,字段名
- Informix数据表结构分析资料整理之字段类型说明和查询SQL语句
- Sql:查看数据库表和表结构的语句
- SQL语句:在两个数据库间复制表结构和数据数据库
- SQL SERVER 获取表结构信息的SQL语句
- SQL Server 索引结构及其使用(二) 改善SQL语句第1/3页
- 数据库基础sql语句总结(以Oracle为主介绍,并与mysql,sql server做对比)二
- SQL SERVER 数据库实用SQL语句 .
- sql server性能分析--查询死锁的sql语句