Sql Server获取数据库名,表信息,字段信息,主键信息等

--Sql Server获取数据库名,表信息,字段信息,主键信息等

 
--获取所有数据库名:
SELECT name FROM  master..sysdatabases WHERE name NOT IN 'master''model''msdb''tempdb''northwind','pubs' )
 
--获取某数据库的所有表:
SELECT name FROM 数据库名..sysobjects Where xtype='U' ORDER BY name
--获取所有表名
--XType='U':表示所有用户表;
--XType='S':表示所有系统表;
 
--获取某表所有字段名:
SELECT FROM syscolumns WHERE id=Object_Id('表名')
 
--获取数据库所有类型
select name from systypes
 
--获取某表的主键字段
SELECT name FROM syscolumns WHERE id=Object_Id('表名'and colid IN(SELECT keyno from sysindexkeys WHERE id=Object_Id('表名'))
 
--存储过程获取主键
exec sp_helpindex     表名
 
--获取字段类型
select a.name as [column],b.name as type from syscolumns a,systypes b where a.id=object_id('表名'and a.xtype=b.xtype
--或者可以通过存储过程
exec sp_help 表名
 
--取表结构
SELECT  c.TABLE_SCHEMA ,
        c.TABLE_NAME ,
        c.COLUMN_NAME ,
        c.DATA_TYPE ,
        c.CHARACTER_MAXIMUM_LENGTH ,
        c.COLUMN_DEFAULT ,
        c.IS_NULLABLE ,
        c.NUMERIC_PRECISION ,
        c.NUMERIC_SCALE
FROM    [INFORMATION_SCHEMA].[COLUMNS] c
WHERE   TABLE_NAME = '表名'
posted @ 2020-07-28 16:20  yongqi-911  阅读(224)  评论(0编辑  收藏  举报