数据字典

oracle数据字典(笔记)

狂风中的少年 提交于 2020-04-03 04:19:11
数据字典是oracle数据库中最重要的组成部分,它提供了一些系统信息 动态性能视图记载了例程启动后的相关信息 数据字典记录了数据库的系统信息,它是只读表和视图的集合,数据字典的所有者为sys用户 用户只能在数据字典上执行查询操作(select 语句),而其维护和修改是由系统自动完成的 user_tables: 用于显示当前用户所拥有的所有表,它只返回用户所对应方案的所有表。 比如:select table_name from user_tables; all_tables 用于显示当前用户可以访问的所有表,它不仅会返回当前用户方案的所有表,还会返回当前用户可以 访问的其它方案的表 比如:select table_name from all_tables dba_tables 它会显示所有方案都拥有的表,但是查询这种数据库字典视图,要求用户必须是dba角色或是select any table 系统权限,例如:当用system用户查询数据字典视图dba_tables时,会返回system,sys, scott、、、方案所对应的数据库表 用户名,权限,角色 查询 dba_users 显示所有数据库用户的详细信息 dba_sys_privs 显示用户具有的系统权限 dba_tab_privs 可以显示用户具有的对象权限 dba_col_privs可以显示用户具有的列权限 dba_role

系统数据字典表结构设计

自闭症网瘾萝莉.ら 提交于 2020-03-12 14:45:36
CREATE TABLE `g_sys_dict` ( `id` int(11) NOT NULL AUTO_INCREMENT COMMENT 'id', `pid` int(11) DEFAULT '0' COMMENT ' 父ID ', `data_type` varchar(50) NOT NULL COMMENT ' 数据类别,首字母大写 ', `data_code` varchar(50) NOT NULL COMMENT ' 数据编码 ', `data_value` varchar(200) NOT NULL COMMENT ' 数据名称/值 ', `sort_no` int(11) unsigned DEFAULT '1' COMMENT ' 顺序 ', `status` tinyint(2) DEFAULT '0' COMMENT '0正常,1删除', `data_desc` varchar(400) DEFAULT NULL COMMENT '数据描述', `update_time` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, PRIMARY KEY (`id`), UNIQUE KEY `G_SYS_DICT_PK` (`id`), KEY `idx_dc_dt`

ORACLE数据库字典表操作

大憨熊 提交于 2020-03-10 07:58:18
1、数据字典中用户表:dba_users; 2、数据字典中表空间表: dba_tablespaces; 3、oracle 查看用户所在的表空间:select username,default_tablespace from dba_users; 4、查看表空间的名字及大小:select t.tablespace_name, round(sum(bytes/(1024*1024)),0) ts_size from dba_tablespaces t, dba_data_files d where t.tablespace_name = d.tablespace_name group by t.tablespace_name; 来源: CSDN 作者: Joker_zy 链接: https://blog.csdn.net/Joker_zy/article/details/104746732

MySQL8功能详解——数据字典

回眸只為那壹抹淺笑 提交于 2020-02-27 13:51:25
以下文章来源于MySQL解决方案工程师 ,作者徐轶韬 MySQL与其它的数据库一样,需要一个储存元数据的地方。在MySQL8之前,它们以各种文件的形式保存在不同的地方,例如 .FRM , .TRG ,.TRN等等。随着时间的推移,这些文件逐渐成为了各种环境中的瓶颈。MySQL8推出了支持事务的数据字典。 MySQL8.0的数据字典,相比较之前的版本,具有如下优势: 改善INFORMATION_SCHEMA性能: MySQL的INFORMATION_SCHEMA由于性能问题,被用户抱怨了很长一段时间,其原因是因为磁盘访问会带来额外的IO开销。而在MySQL8.0里,INFORMATION_SCHEMA的一部分表是通过建立数据字典表之上的视图来实现的,服务器无需为每次查询INFORMATION_SCHEMA创建临时表。之前读取INFORMATION_SCHEMA的信息需要执行文件操作,而现在只需要进行数据库里面的检索即可。 集中统一管理元数据: 8.0之前的MySQL,服务器和Inndb的数据字典会分别保存在不同的地方,里面会有一些重复的数据,这些数据可能好长一段时间不会进行同步。另外对于类似MyISAM表的FRM, .PAR, .OPT, .TRN等不同文件进行管理时,需要使用复杂的代码控制主从复制、崩溃故障恢复状态。并且缺乏可扩展性。现在将这些元数据文件存储在数据字典表中。

用Sql语句生成Sqlserver数据字典(备份)

感情迁移 提交于 2020-02-26 00:44:50
SELECT 表名 = case when a.colorder = 1 then d.name else '' end , 字段序号 = a.colorder, 字段名 = a.name, 标识 = case when COLUMNPROPERTY ( a.id,a.name, ' IsIdentity ' ) = 1 then ' √ ' else '' end , 主键 = case when 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 ))) then ' √ ' else '' end , 类型 = b.name, 用字节数 = a.length, 长度 = COLUMNPROPERTY (a.id,a.name, ' PRECISION ' ), 小数位数 = isnull ( COLUMNPROPERTY (a.id,a.name, ' Scale ' ), 0 ), 允许空 = case when a.isnullable = 1 then ' √ '

用Sql语句生成Sqlserver数据字典

旧巷老猫 提交于 2020-02-26 00:44:28
SELECT 表名 = case when a.colorder = 1 then d.name else '' end , -- 字段序号=a.colorder, 字段名 = a.name, -- 标识=case when COLUMNPROPERTY( a.id,a.name,'IsIdentity')=1 then '√'else '' end, /* 主键=case when 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 ))) then '√' else '' end, */ 类型 = b.name, -- 占用字节数=a.length, 长度 = COLUMNPROPERTY (a.id,a.name, ' PRECISION ' ), 小数位数 = isnull ( COLUMNPROPERTY (a.id,a.name, ' Scale ' ), 0 ), 允许空 = case when a.isnullable = 1 then ' √ ' else '' end ,

SQL语句生成SQLServer数据字典

混江龙づ霸主 提交于 2020-02-26 00:43:38
用Sql语句生成Sqlserver数据字典 SELECT 表名 = case when a.colorder = 1 then d.name else '' end , -- 字段序号=a.colorder, 字段名 = a.name, -- 标识=case when COLUMNPROPERTY( a.id,a.name,'IsIdentity')=1 then '√'else '' end, /**/ /**/ /**/ /* 主键=case when 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 ))) then '√' else '' end, */ 类型 = b.name, -- 占用字节数=a.length, 长度 = COLUMNPROPERTY (a.id,a.name, ' PRECISION ' ), 小数位数 = isnull ( COLUMNPROPERTY (a.id,a.name, ' Scale ' ), 0 ), 允许空 = case when a

sql Server 2012 生成数据字典

主宰稳场 提交于 2020-02-26 00:42:33
SELECT   表名=case when a.colorder=1 then d.name else '' end,   表说明=case when a.colorder=1 then isnull(f.value,'') else '' end,   字段序号=a.colorder,   字段名=a.name,   标识=case when COLUMNPROPERTY( a.id,a.name,'IsIdentity')=1 then '√'else '' end,   主键=case when 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     ))) then '√' else '' end,   类型=b.name,   占用字节数=a.length,   长度=COLUMNPROPERTY(a.id,a.name,'PRECISION'),   小数位数=isnull(COLUMNPROPERTY(a.id,a.name,'Scale'),0),  

Sql数据字典生成语句

元气小坏坏 提交于 2020-02-26 00:41:00
Sql数据字典生成语句如下,在Sql2008可以使用。 SELECT 表名 = case when a.colorder = 1 then d.name else '' end , 表说明 = case when a.colorder = 1 then isnull (f.value, '' ) else '' end , 字段序号 = a.colorder, 字段名 = a.name, 标识 = case when COLUMNPROPERTY ( a.id,a.name, ' IsIdentity ' ) = 1 then ' √ ' else '' end , 主键 = case when 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 ))) then ' √ ' else '' end , 类型 = b.name, 占用字节数 = a.length, 长度 = COLUMNPROPERTY (a.id,a.name, ' PRECISION ' ), 小数位数 =

用sql语句生成 数据字典

依然范特西╮ 提交于 2020-02-26 00:39:39
SELECT 表名=case when a.colorder=1 then d.name else '' end, 表说明=case when a.colorder=1 then isnull(f.value,'') else '' end, 字段序号=a.colorder, 字段名=a.name, 标识=case when COLUMNPROPERTY( a.id,a.name,'IsIdentity')=1 then '√'else '' end, 主键=case when 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 ))) then '√' else '' end, 类型=b.name, 占用字节数=a.length, 长度=COLUMNPROPERTY(a.id,a.name,'PRECISION'), 小数位数=isnull(COLUMNPROPERTY(a.id,a.name,'Scale'),0), 允许空=case when a.isnullable=1 then '√