SQL获取数据库名,表名,列名,说明等信息

您所在的位置:网站首页 sql获取所有表名称 SQL获取数据库名,表名,列名,说明等信息

SQL获取数据库名,表名,列名,说明等信息

2023-11-08 23:31| 来源: 网络整理| 查看: 265

由于最近工作涉及SQL语句较多,对一些不常见的SQL函数、及存储过程下面进行整理和描述,供大家分享:

/************************************************************************************************************** 1、获取所有用户名: islogin='1' :表示帐户 islogin='0' :表示角色 status='2' :表示用户帐户 status='0' :表示系统帐户 **************************************************************************************************************/ SELECT name FROM sysusers WHERE status = '0' AND islogin = '1' /************************************************************************************************************** 2、获取所有数据库名: **************************************************************************************************************/ SELECT name FROM master..sysdatabases ORDER BY name /************************************************************************************************************** 3、获取所有表名: XType='U' :表示所有用户表; XType='S' :表示所有系统表; **************************************************************************************************************/ SELECT name FROM 数据库名..sysobjects WHERE xtype = 'U' ORDER BY name /************************************************************************************************************** 4、获取所有字段名: **************************************************************************************************************/ SELECT name FROM syscolumns WHERE id = Object_id('表名') /************************************************************************************************************** 5、获取数据库所有类型: **************************************************************************************************************/ SELECT name FROM systypes /************************************************************************************************************** 6、获取主键字段: **************************************************************************************************************/ SELECT name FROM syscolumns WHERE id = Object_id('表名') AND colid = (SELECT TOP 1 keyno FROM sysindexkeys WHERE id = Object_id('表名')) /************************************************************************************************************** 7、获取表字段的基本信息: a. **************************************************************************************************************/ SELECT 字段名 = Rtrim(b.name) ,主键 = CASE WHEN h.id IS NOT NULL THEN 'PK' ELSE '' END ,字段类型 = Type_name(b.xusertype) + CASE WHEN b.colstat & 1 = 1 THEN '[ID(' + CONVERT(VARCHAR,Ident_seed(a.name)) + ',' + CONVERT(VARCHAR,Ident_incr(a.name)) + ')]' ELSE '' END ,长度 = b.length ,允许空 = CASE b.isnullable WHEN 0 THEN 'N' ELSE 'Y' END ,默认值 = Isnull(e.TEXT,'') ,字段说明 = Isnull(c.VALUE,'') FROM sysobjects a INNER JOIN sys.all_objects aa ON a.id=aa.object_id AND schema_name(schema_id)='dbo' ,syscolumns b LEFT OUTER JOIN sys.extended_properties c ON b.id = c.major_id AND b.colid = c.minor_id LEFT OUTER JOIN syscomments e ON b.cdefault = e.id LEFT OUTER JOIN (SELECT g.id ,g.colid FROM sysindexes f ,sysindexkeys g WHERE (f.id = g.id) AND (f.indid = g.indid) AND (f.indid > 0) AND (f.indid


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3