⑴ 数据字典有哪些类型
数据字典中有四种类型的条目:数据流,数据存储,数据项和加工。
数据字典中包括数据定义,但除了它之外,还包含其它一些信息:
一般信息,包括名字,别名和描述;
数据定义,包括数据类型,数据长度和结构组成;
数据的使用特点,包含数据的取值范围,使用频率和使用方式;
数据的控制信息,包括数据来源,用户,使用它的程序和改变权。
⑵ 到底数据字典是什么
一、数据字典并不是传统的纸质字典,它是一些系统自带表,可以查询数据库相关信息,一般存在于电脑系统或是其它电子系统中,供人查阅不了解条目的信息与解释。
数据字典存储有关数据的来源、说明、与其他数据的关系、用途和格式等信息,它本身就是一个数据库,存储“关于数据项的数据”。数据字典是个指南,它为数据库提供了“路线图”,而不是“原始数据”。
换句话说,数据字典通常是指数据库中数据定义的一种记录,类似一个数据库的数据结构,但其内容要比数据库的数据结构描述丰富得多(Malamud, 1989)。在收集有关数据信息,建立数据库的初始阶段,必须建立数据项的命名约定,必须统一不同部门、不同个人之间对共同关心的数据的内涵、来源和命名的观念。
这个过程要涉及数据监管人、用户和数据库开发人员,是一个需要反复多次的过程。这个统一的命名约定,及其附带的说明,就是数据字典。
二、数据字典内容包括:
1、数据库中所有模式对象的信息,如表、视图、簇、及索引等;
2、分配多少空间,当前使用了多少空间等;
3、列的缺省值;
4、约束信息的完整性;
5、用户的名字;
6、用户及角色被授予的权限;
7、用户访问或使用的审计信息;
8、其它产生的数据库信息。
(2)数据字典符号都有哪些扩展阅读:
建立数据字典有以下几个目的:
1、提高开发效率,降低研制成本。数据字典是数据库开发者、数据监管人和用户之间的共同约定,是系统说明书的一个重要组成部分。一个统一的数据字典有助于开发者建立数据模型以及程序和数据库之间的数据转换接口,为规范化设计和实施数据管理系统铺平了道路。
2、促进数据共享,提高数据的使用效率。通过数据字典,用户可以方便地知道每项数据的意义,了解数据的来源和使用方法,从而帮助用户迅速地找到所需的信息,并按照正确的方法使用数据。
3、控制数据的使用。在某些特定的场合,可以通过对数据字典的控制达到控制数据使用的目的。
参考资料来源:网络-数据字典
⑶ 什么是数据流图与数据字典
数据流图:简称DFD,就是采用图形方式来表达系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程,是结构化系统分析方法的主要表达工具及用于表示软件模型的一种图示方法。
数据流图的基本符号的意思:
1.矩形表示数据的外部实体;
2.圆角的矩形表示变换数据的处理逻辑;
3.少右面的边矩形表示数据的存储;
4.箭头表示数据流。
数据流程图中有以下几种主要元素:
→:数据流。数据流是数据在系统内传播的路径,因此由一组成分固定的数据组成。如订票单由旅客姓名、年龄、单位、身份证号、日期、目的地等数据项组成。由于数据流是流动中的数据,所以必须有流向,除了与数据存储之间的数据流不用命名外,数据流应该用名词或名词短语命名。
□:数据源(终点)。代表系统之外的实体,可以是人、物或其他软件系统。
○:对数据的加工(处理)。加工是对数据进行处理的单元,它接收一定的数据输入,对其进行处理,并产生输出。
〓:数据存储。表示信息的静态存储,可以代表文件、文件的一部分、数据库的元素等。
在单张数据流图时,必须注意以下原则:
1.一个加工的输出数据流不应与输入数据流同名,即使它们的组成成分相同。
2.保持数据守恒。也就是说,一个加工所有输出数据流中的数据必须能从该加工的输入数据流中直接获得,或者说是通过该加工能产生的数据。
3.每个加工必须既有输入数据流,又有输出数据流。
4.所有的数据流必须以一个加工开始,或以一个加工结束。
数据字典是Oracle存放有关数据库信息的地方,其用途是用来描述数据的。比如一个表的创建者信息,创建时间信息,所属表空间信息,用户访问权限信息等。当用户在对数据库中的数据进行操作时遇到困难就可以访问数据字典来查看详细的信息。
Oracle中的数据字典有静态和动态之分。静态数据字典主要是在用户访问数据字典时不会发生改变的,但动态数据字典是依赖数据库运行的性能的,反映数据库运行的一些内在信息,所以在访问这类数据字典时往往不是一成不变的。以下分别就这两类数据字典来论述。
1. 静态数据字典
这类数据字典主要是由表和视图组成,应该注意的是,数据字典中的表是不能直接被访问的,但是可以访问数据字典中的视图。静态数据字典中的视图分为三类,它们分别由三个前缀够成:user_*、 all_*、 dba_*。
user_*
该视图存储了关于当前用户所拥有的对象的信息。(即所有在该用户模式下的对象)
all_*
该试图存储了当前用户能够访问的对象的信息。(与user_*相比,all_* 并不需要拥有该对象,只需要具有访问该对象的权限即可)
dba_*
该视图存储了数据库中所有对象的信息。(前提是当前用户具有访问这些数据库的权限,一般来说必须具有管理员权限)
从上面的描述可以看出,三者之间存储的数据肯定会有重叠,其实它们除了访问范围的不同以外(因为权限不一样,所以访问对象的范围不一样),其他均具有一致性。具体来说,由于数据字典视图是由SYS(系统用户)所拥有的,所以在却省情况下,只有SYS和拥有DBA系统权限的用户可以看到所有的视图。没有DBA权限的用户只能看到user_*和all_*视。如果没有被授予相关的SELECT权限的话,他们是不能看到 dba_*视图的。
由于三者具有相似性,下面以user_为例介绍几个常用的静态视图:
user_users视图
主要描述当前用户的信息,主要包括当前用户名、帐户id、帐户状态、表空间名、创建时间等。例如执行下列命令即可返回这些信息。
select * from user_users
user_tables视图
主要描述当前用户拥有的所有表的信息,主要包括表名、表空间名、簇名等。通过此视图可以清楚了解当前用户可以操作的表有哪些。执行命令为:select * from user_tables
user_objects视图
主要描述当前用户拥有的所有对象的信息,对象包括表、视图、存储过程、触发器、包、索引、序列等。该视图比user_tables视图更加全面。例如, 需要获取一个名为“package1”的对象类型和其状态的信息,可以执行下面命令:
select object_type,status
from user_objects
where object_name=upper(‘package1’);
这里需注意upper的使用,数据字典里的所有对象均为大写形式,而PL/SQL里不是大小写敏感的,所以在实际操作中一定要注意大小写匹配。
user_tab_privs视图
该视图主要是存储当前用户下对所有表的权限信息。比如,为了了解当前用户对table1的权限信息,可以执行如下命令:
select * from user_tab_privs where table_name=upper('table1')
了解了当前用户对该表的权限之后就可以清楚的知道,哪些操作可以执行,哪些操作不能执行。
前面的视图均为user_开头的,其实all_开头的也完全是一样的,只是列出来的信息是当前用户可以访问的对象而不是当前用户拥有的对象。对于dba_开头的需要管理员权限,其他用法也完全一样,这里就不再赘述了。
2. 动态数据字典
Oracle包含了一些潜在的由系统管理员如SYS维护的表和视图,由于当数据库运行的时候它们会不断进行更新,所以称它们为动态数据字典(或者是动态性能视图)。这些视图提供了关于内存和磁盘的运行情况,所以我们只能对其进行只读访问而不能修改它们。
Oracle中这些动态性能视图都是以v$开头的视图,比如v$access。下面就几个主要的动态性能视图进行介绍。
v$access
该视图显示数据库中锁定的数据库对象以及访问这些对象的会话对象(session对象)。
运行如下命令:
select * from v$access
结果如下:(因记录较多,故这里只是节选了部分记录)
SID
OWNER OBJECT TYPE
27 DKH V$ACCESS CURSOR
27 PUBLIC V$ACCESS SYNONYM
27 SYS DBMS_APPLICATION_INFO PACKAGE
27 SYS GV$ACCESS VIEW
v$session
该视图列出当前会话的详细信息。由于该视图字段较多,这里就不列详细字段,为了解详细信息,可以直接在sql*plus命令行下键入:desc v$session即可。
v$active_instance
该视图主要描述当前数据库下的活动的实例的信息。依然可以使用select语句来观察该信息。
v$context
该视图列出当前会话的属性信息。比如命名空间、属性值等。
3.小结
以上是Oracle的数据字典方面的基本内容,还有很多有用视图因为篇幅原因这里不能一一讲解,希望大家在平时使用中多留心。总之,运用好数据字典技术,可以让数据库开发人员能够更好的了解数据库的全貌,这样对于数据库优化、管理等有极大的帮助。
⑷ 什么是数据字典
数据字典:关于数据的信息集合。也就是对数据流图中包含的所有元素的定义的集合
数据字典的内容:
1.由对下列四类元素的定义组成:
(1)数据流
(2)数据流分量(数据元素)
(3)数据存储
(4)处理
(注:本书所指主要是由对数据的定义组成)
2.除数据定义外,数据字典还应包括:
记录数据元素的下述信息
(1)一般信息(名字,别名,描述)
(2)定义(数据类型,长度,结构)
(3)使用特点(值的范围,使用频率,使用方式,输入/输出/本地条件值等)
(4)控制信息(来源,用户,使用它的程序,改变权,使用权等)
(5)分组信息(父结点,从属结构,物理位置——记录,文件和数据库等)
三、数据的定义方法:
数据字典中的定义:
就是对数据自顶向下的分解,分解到不需要进一步定义为止。
数据元素组成数据的方式:
(1)顺序:以确定次序连接两个或多个分量
(2)选择:从两个或多个可能的元素中选取一个
(3)重复:把指定的分量重复零次或多次
(4)可选:一个分量是可有可无的
3.在数据字典中建议使用下列符号:
(1)=:等价于(定义为)
(2)+:和(连接两个分量)
(3)[ ]:或(从方括弧内列出的若干个分量中选择一个)
(4)():可选(圆括弧里的分量可有可无)
四、数据字典的用途
数据字典最重要的用途是作为分析阶段的工具
有助于改进分析员,发小组之间的通信。
有助于改进不同开发人员,不同开发小组之间的通信
有助于要求所有开发人员根据公共数据字典描述数据和设计模块,避免许多麻烦口问题
2.数据字典是开发数据库的第一步。
五、数据字典的实现:
三种常见的途径:
全人工过程(数据字典卡片)
全自动化过程(利用数据字典处理程序)
混合过程
六、数据字典应具有的特点:
通过名字能方便地查阅数据的定义
没有冗余
尽量不重复在规格说明的其他组成部分中已经出现的信息
容易更新和修改
能单独处理描述每一个数据元素的信息
定义的书写方法简单、方便且严格
产生交叉表、错误检测、一致性校验等
⑸ oracle数据库中,sql代码中的数据库表名称后加$是什么意思
表名带有$符号一般都是数据字典的视图或同义词。
例如:v$database数据库运行信息、v$datafile所有数据文件信息
⑹ 数据字典的总字典的命名是什么 数据字典的总字典的命名是啥
1、数据字典的总字典的命名是dba。数据字典(Datadictionary)是一种用户可以访问的记录数据库和应用程序元数据的目录。主动数据字典是指在对数据库或应用程序结构进行修改时,其内容可以由DBMS自动更新的数据字典。
2、数据(data)是事实或观察的结果,是对客观事物的逻辑归纳,是用于表示客观事物的未经加工的原始素材。数据可以是连续的值,比如声音、图像,称为模拟数据。也可以是离散的,如符号、文字,称为数字数据。