数据字典是什么

数据字典是什么,第1张

数据字典如下:

数据字典是指对数据的数据项、数据结构、数据流、数据存储、处理逻辑、外部实体等进行定义和描述,其目的是对数据流程图中的各个元素做出详细的说明。

数据字典最重要的作用是作为分析阶段的工具。任何字典最重要的用途都是供人查询对不了解的条目的解释,在结构化分析中,数据字典的作用是给数据流图上每个成分加以定义和说明。

简介:

数据库数据字典不仅是每个数据库的中心,而且对每个用户也是非常重要的信息。用户可以用SQL语句访问数据库数据字典,如数据项、数据结构、数据流、数据存储、处理过程。 数据字典是数据库的重要组成部分。它存放有数据库所用的有关信息,对用户来说是一组只读的表。

谈到的是Winform开发框架中字典数据管理 在字典数据数据管理工程项目中 我们看到有两个不同的数据访问层 工厂模式通过不同的配置 调用不同的数据访问层

好久没写博客了 除了是工作较忙的原因外 其实是也一直在想如何整合我所有的开发经验及技术积累 开发过很多Winform共享软件 ASP NET的WebForm项目 发现很多东西是相互关联很紧密的 但往往我们太忙太懒 要好好整理 并整理出棒棒的一般比较难 但我们没有停步 梦想总会慢慢接近并实现 在做了很多项目之后 发现人的惰性或者惯性很大 因此有机会得好好整理下开发的成功 优化再优化 用的时候就越来越顺手了

在所有开发过的项目过程 很多如权限管理 字典数据管理模块 都是非常常用的模块 本文主要想介绍下提炼出来 各个项目均可通用的字典数据管理系统(或者叫做模块更为适合) 在介绍之前 我想介绍下我的整合路线及一些想法 如下所示

其中框架中所有介绍的内容均为现有开发框架中有的东西及特性 如果要了解Winform框架的多维特点 可以现在最新的共享软件《仓库管理系统》 具体可以参考文章《从开发的软件《备件仓库管理系统》总结的一些经验》进行了解 该共享软件除了整合众多优秀的功能外 一个特点就是数据管理模块也得到了升华

在Winform框架中 其中权限管理系统 字典管理系统 都是可以做成独立的程序来使用 而且应该可以在程序中引用来查询或者获取相关的字典数据 如找某个键值的字典列表作为下拉列表 而且由于实际项目总 有点是SqlServer 有的是Access数据库的 所以支持多数据库是最好的选择

在字典数据数据管理工程项目中 我们看到有两个不同的数据访问层 工厂模式通过不同的配置 调用不同的数据访问层 从而实现SqlServer Access等数据库的支持 当然可以扩展更多的数据库支持 我们先来看看工程项目的视图如下所示

配置文件如下所示

<xml  version=  encoding= utf   >   <configuration>   <configSections>   <section  name= dataConfiguration  type= Microsoft Practices EnterpriseLibrary Data Configuration DatabaseSettings  Microsoft Practices EnterpriseLibrary Data /> type= Microsoft Practices EnterpriseLibrary Data Configuration DatabaseSettings  Microsoft Practices EnterpriseLibrary Data /> type= Microsoft Practices EnterpriseLibrary Data Configuration DatabaseSettings  Microsoft Practices EnterpriseLibrary Data />   </configSections>   <connectionStrings>   <add  name= DataAccess  providerName= System Data OleDb  connectionString= Provider=Microsoft Jet OLEDB ;Data Source=E:我的应用程序数据字典SqlDictionaryWHC Dictionary UIinDebugOrderWater mdb;User ID=Admin;Jet OLEDB:Database Password=;   />   <add  name= DataAccess  providerName= System Data SqlClient  connectionString= Persist Security Info=False;Data Source=(local);Initial Catalog=Warehouse;User ID=sa;Password= /> connectionString= Persist Security Info=False;Data Source=(local);Initial Catalog=Warehouse;User ID=sa;Password= /> connectionString= Persist Security Info=False;Data Source=(local);Initial Catalog=Warehouse;User ID=sa;Password= />   </connectionStrings>   <dataConfiguration  defaultDatabase= DataAccess />   <appSettings>  <! 软件名称 >  <add  key= ApplicationName  value= 深田之星仓库管理系统 />  <! 开发商名称 >  <add  key= Manufacturer  value= 广州爱启迪技术有限公司 />  <! 数据字典的数据库类型 access sqlserver等 >  <add  key= ComponentDbType  value= access />    </appSettings>   </configuration>  

我们通过DictionaryDbType来切换不同的数据库 不用修改代码实现多数据库支持 当然 不同的数据库 需要创建不同的数据库文件 不过数据库结构基本上是一致的

我们看看该字典管理模块的最终效果 如下所示

字典数据模块做成独立的程序后 一个可以独立运行 也可以在宿主程序中通过DLL方式调用类库来获取字典数据 如下所示

private   void  InitDictItem()  {   this txtManufacture Items Clear();   this txtManufacture Items AddRange(DictItemUtil GetDictByDictType( 供货商 ));   this txtBigType Items Clear();   this txtBigType Items AddRange(DictItemUtil GetDictByDictType( 备件属类 ));   this txtItemType Items Clear();   this txtItemType Items AddRange(DictItemUtil GetDictByDictType( 备件类别 ));   this txtSource Items Clear();   this txtSource Items AddRange(DictItemUtil GetDictByDictType( 来源 ));   this txtWareHouse Items Clear();   this txtWareHouse Items AddRange(DictItemUtil GetAllWareHouse() ToArray());   this txtDept Items Clear();   this txtDept Items AddRange(DictItemUtil GetDictByDictType( 部门 ));  }  lishixinzhi/Article/program/net/201311/13777

数据字典是指对数据的数据项、数据结构、数据流、数据存储、处理逻辑等进行定义和描述,其目的是对数据流程图中的各个元素做出详细的说明,使用数据字典为简单的建模项目。简而言之,数据字典是描述数据的信息集合,是对系统中使用的所有数据元素的定义的集合。

数据字典不是可以拿在手上翻阅的字典。数据字典包含:数据项,数据流,数据结构,数据存储,处理过程五个部分。同时也是详细数据收集和数据分析的结果。

扩展资料

数据字典在需求分析阶段被建立。

数据字典是一个预留空间,一个数据库,这是用来储存信息数据库本身。

数据字典可能包含的信息,例如:数据库设计资料,数据内部储存的SQL程序,用户权限,用户统计,数据库的过程中的信息,数据库增长统计,数据库性能统计。

数据字典则是系统中各类数据描述的集合,是进行详细的数据收集和数据分析所获得的主要成果。其中数据项是数据的最小组成单位,若干个数据项可以组成一个数据结构。数据字典通过对数据项和数据结构的定义,来描述数据流、数据存储的逻辑内容。

数据字典是关于数据的信息的集合,也就是对数据流图中包含的所有元素的定义的集合数据字典还有另一种含义,是在数据库设计时用到的一种工具,用来描述数据库中基本表的设计,主要包括字段名、数据类型、主键、外键等描述表的属性的内容。

以Oracle数据库字典为例:数据字典分为数据字典表和数据字典视图。

Oracle数据库字典通常是在创建和安装数据库时被创建的,Oracle数据字典是Oracle数据库系统工作的基础,没有数据字典的支持,Oracle数据库系统就不能进行任何工作。数据字典中的表是不能直接被访问的,但是可以访问数据字典中的视图。

数据字典表里的数据是Oracle系统存放的系统数据,而普通表存放的是用户的数据。为了方便的区别这些表,这些表的名字都是用"$"结尾,这些表属于SYS用户。

数据字典表由$ORACLE_HOME/rdbms/admin/sqlbsq 脚本创建, 这个脚本里又调用了其他的脚本来创建这些数据字典表。 在那些创建脚本里有基表的创建SQL。

Oracle 对数据字典表的说明:

These underlying tables store information about the database Only Oracle Database should write to and read these tables Users rarely access the base tables directly because they are normalized and most data is stored in a cryptic format

这些数据字典表,只有Oracle 能够进行读写。

SYS用户下的这些数据字典表,存放在system 表空间下面,表名都用"$"结尾,为了便于用户对数据字典表的查询, Oracle对这些数据字典都分别建立了用户视图,这样即容易记住,还隐藏了数据字典表表之间的关系。

Oracle针对这些对象的范围,分别把视图命名为DBA_XXXX, ALL_XXXX和USER_XXXX。

数据字典视图分2类:静态数据字典(静态性能视图) 和 动态数据字典(动态性能视图)。

静态数据字典中的视图分为三类,它们分别由三个前缀构成:user_、 all_、 dba_。

user_:该视图存储了关于当前用户所拥有的对象的信息。(即所有在该用户模式下的对象)

all_:该视图存储了当前用户能够访问的对象的信息, 而不是当前用户拥有的对象。(与user_相比,all_ 并不需要拥有该对象,只需要具有访问该对象的权限即可)

dba_:该视图存储了数据库中所有对象的信息。(前提是当前用户具有访问这些数据库的权限,一般来说必须具有管理员权限)

这些视图由SYS用户创建的,所以使用需要加上SYS,为了方便, Oracle为每个数据字典表的视图头建立了同名字的公共同义词(public synonyms) 这样简单的处理就省去了写sys的麻烦。

参考资料:

百度百科-数据字典

数据字典在需求分析阶段被建立。

数据字典是一个预留空间,一个数据库,这是用来储存信息数据库本身。

数据字典可能包含的信息,例如:

数据库设计资料

储存的SQL程序

用户权限

用户统计

数据库的过程中的信息

数据库增长统计

数据库性能统计

数据字典则是系统中各类数据描述的集合,是进行详细的数据收集和数据分析所获得的主要成果。

数据字典通常包括数据项\数据结构\数据流\数据存储和处理过程五个部分。

其中数据项是数据的最小组成单位若干个数据项可以组成一个数据结构数据字典通过对数据项和数据结构的 定义来描述数据流、数据存储的逻辑内容。

数据字典是关于数据的信息的集合,也就是对数据流图中包含的所有元素的定义的集合

数据字典还有另一种含义,是在数据库设计时用到的一种工具,用来描述数据库中基本表的设计,主要包括字段名、数据类型、主键、外键等描述表的属性的内容。

以Oracle数据库字典为例:数据字典分为数据字典表和数据字典视图

Oracle数据库字典通常是在创建和安装数据库时被创建的,Oracle数据字典是Oracle数据库系统工作的基础,没有数据字典的支持,Oracle数据库系统就不能进行任何工作。数据字典中的表是不能直接被访问的,但是可以访问数据字典中的视图。

数据字典表里的数据是Oracle系统存放的系统数据,而普通表存放的是用户的数据。为了方便的区别这些表,这些表的名字都是用$结尾,这些表属于SYS用户。

数据字典表由$ORACLE_HOME/rdbms/admin/sqlbsq 脚本创建, 这个脚本里又调用了其他的脚本来创建这些数据字典表。 在那些创建脚本里有基表的创建SQL。

Oracle 对数据字典表的说明:

These underlying tables store information about the database Only Oracle Database should write to and read these tables Users rarely access the base tables directly because they are normalized and most data is stored in a cryptic format

这些数据字典表,只有Oracle 能够进行读写。

SYS用户下的这些数据字典表,存放在system 表空间下面,表名都用$结尾,为了便于用户对数据字典表的查询, Oracle对这些数据字典都分别建立了用户视图,这样即容易记住,还隐藏了数据字典表表之间的关系,Oracle针对这些对象的范围,分别把视图命名为DBA_XXXX, ALL_XXXX和USER_XXXX。

数据字典视图分2类:静态数据字典(静态性能视图) 和 动态数据字典(动态性能视图)。

静态数据字典中的视图分为三类,它们分别由三个前缀构成:user_、 all_、 dba_。

user_:该视图存储了关于当前用户所拥有的对象的信息。(即所有在该用户模式下的对象)

all_:该试图存储了当前用户能够访问的对象的信息, 而不是当前用户拥有的对象。(与user_相比,all_ 并不需要拥有该对象,只需要具有访问该对象的权限即可)

dba_:该视图存储了数据库中所有对象的信息。(前提是当前用户具有访问这些数据库的权限,一般来说必须具有管理员权限)

这些视图由SYS用户创建的,所以使用需要加上SYS,为了方便, Oracle为每个数据字典表的视图头建立了同名字的公共同义词(public synonyms) 这样简单的处理就省去了写sys的麻烦。

除了静态数据字典中三类视图,其他的字典视图中主要的是V$视图,之所以这样叫是因为他们都是以V$或GV$开头的。这些视图会不断的进行更新,从而提供了关于内存和磁盘的运行情况,所以我们只能对其进行只读访问而不能修改它们。

Throughout its operation, Oracle Database maintains a set of virtual tables that record current database activity These views are calleddynamic performance views because they are continuously updated while a database is open and in use The views, also sometimes calledV$ views。

V$视图是基于X$虚拟视图的。V$视图是SYS用户所拥有的,在缺省状况下,只有SYS用户和拥有DBA系统权限的用户可以看到所有的视图,没有DBA权限的用户可以看到USER_和ALL_视图,但不能看到DBA_视图。与DBA_,ALL,和USER_视图中面向数据库信息相反,这些视图可视的给出了面向实例的信息。

动态性能表用于记录当前数据库的活动,只存于数据库运行期间,实际的信息都取自内存和控制文件。 DBA可以使用动态视图来监视和调节数据。

数据字典是数据库里的概念,不知道怎么解释你才听的更舒服,首先你做带数据库系统的软件的时候,有需求分析的阶段,当需求出来要做成库的时候,所有的实体及实体之间的关系,都要将来被写如数据字典里。

如果你自己建过数据库,当库建好后,除了数据库里你录入的数据外,都是数据字典要记录的内容。

数据字典是一个预留空间,一个数据库,这是用来储存信息数据库本身,是系统中各类数据描述的集合,是进行详细的数据收集和数据分析所获得的主要成果数据字典通常包括数据项\数据结构\数据流\数据存储和处理过程五个部分

数据库应用系统的开发是一项软件工程。一般可分为以下几个阶段:1规划2需求分析3概念模型设计4逻辑设计5物理设计6程序编制及调试7运行及维护。这些阶段的划分目前尚无统一的标准,各阶段间相互联接,而且常常需要回溯修正。在数据库应用系统的开发过程中,每个阶段的工作成果就是写出相应的文档。每个阶段都是在上一阶段工作成果的基础上继续进行,整个开发工程是有依据、有组织、有计划、有条不紊地展开工作。1规划规划的主要任务就是作必要性及可行性分析。在收集整理有关资料的基础上,要确定将建立的数据库应用系统与周边的关系,要对应用系统定位,其规模的大小、所处的地位、应起的作用均须作全面的分析和论证。明确应用系统的基本功能,划分数据库支持的范围。分析数据来源、数据采集的方式和范围,研究数据结构的特点,估算数据量的大小,确立数据处理的基本要求和业务的规范标准。规划人力资源调配。对参与研制和以后维护系统运作的管理人员、技术人员的技术业务水平提出要求,对最终用户、 *** 作员的素质作出评估。拟定设备配置方案。论证计算机、网络和其他设备在时间、空间两方面的处理能力,要有足够的内外存容量,系统的响应速度、网络传输和输入输出能力应满足应用需求并留有余量。要选择合适的os,dbms和其它软件。设备配置方案要在使用要求、系统性能、购置成本和维护代价各方面综合权衡。对系统的开发、运行、维护的成本作出估算。预测系统效益的期望值。拟定开发进度计划,还要对现行工作模式如何向新系统过渡作出具体安排。规划阶段的工作成果是写出详尽的可行性分析报告和数据库应用系统规划书。内容应包括:系统的定位及其功能、数据资源及数据处理能力、人力资源调配、设备配置方案、开发成本估算、开发进度计划等。可行性分析报告和数据库应用系统规划书经审定立项后,成为后续开发工作的总纲。数据库应用系统的开发是一项软件工程,本文介绍了数据库应用系统的开发步骤2需求分析需求分析大致可分成三步来完成。(1)需求信息的收集,需求信息的收集一般以机构设置和业务活动为主干线,从高层中层到低层逐步展开(2)需求信息的分析整理,对收集到的信息要做分析整理工作。数据流图(dfd,dataflowdiagram)是业务流程及业务中数据联系的形式描述。图41是一个简单的dfd示例。数据字典(dd,datadictionary)详细描述系统中的全部数据。数据字典包含以下几个部分。·数据项:是数据的原子单位。·数据组项:由若干数据项组成。·数据流:表示某一数据加工过程的输入/输出数据。·数据存储:是处理过程中要存取的数据。·数据加工过程数据加工过程的描述包括:数据加工过程名、说明、输入、输出、加工处理工作摘要、加工处理频度、加工处理的数据量、响应时间要求等。数据流图既是需求分析的工具,也是需求分析的成果之一。数据字典是进行数据收集和数据分析的主要成果。(3)需求信息的评审开发过程中的每一个阶段都要经过评审,确认任务是否全部完成,避免或纠正工作中出现的错误和疏漏。聘请项目外的专家参与评审,可保证评审的质量和客观性。评审可能导致开发过程回溯,甚至会反复多次。但是,一定要使全部的预期目标都达到才能让需求分析阶段的工作暂告一个段落需求分析阶段的工作成果是写出一份既切合实际又具有预见的需求说明书,并且附以一整套详尽的数据流图和数据字典。3概念模型设计概念模型不依赖于具体的计算机系统,他是纯粹反映信息需求的概念结构。建模是在需求分析结果的基础上展开,常常要对数据进行抽象处理。常用的数据抽象方法是‘聚集’和‘概括’。er方法是设计概念模型时常用的方法。用设计好的er图再附以相应的说明书可作为阶段成果概念模型设计可分三步完成。(1)设计局部概念模型①确定局部概念模型的范围②定义实体③定义联系④确定属性⑤逐一画出所有的局部er图,并附以相应的说明文件数据库应用系统的开发是一项软件工程,本文介绍了数据库应用系统的开发步骤(2)设计全局概念模型建立全局er图的步骤如下:①确定公共实体类型②合并局部er图③消除不一致因素④优化全局er图⑤画出全局er图,并附以相应的说明文件。(3)概念模型的评审概念模型的评审分两部分进行第一部分是用户评审。第二部分是开发人员评审。4逻辑设计逻辑设计阶段的主要目标是把概念模型转换为具体计算机上dbms所支持的结构数据模型。逻辑设计的输入要素包括:概念模式、用户需求、约束条件、选用的dbms的特性。逻辑设计的输出信息包括:dbms可处理的模式和子模式、应用程序设计指南、物理设计指南。(1)设计模式与子模式关系数据库的模式设计可分四步完成。①建立初始关系模式②规范化处理③模式评价④修正模式经过多次的模式评价和模式修正,确定最终的模式和子模式。写出逻辑数据库结构说明书。数据库应用系统的开发是一项软件工程,本文介绍了数据库应用系统的开发步骤(2)编写应用程序设计指南根据设计好的模式和应用需求,规划应用程序的架构,设计应用程序的草图,指定每个应用程序的数据存取功能和数据处理功能梗概,提供程序上的逻辑接口。编写出应用程序设计指南。(3)编写物理设计指南。根据设计好的模式和应用需求,整理出物理设计阶段所需的一些重要数据和文档。例如,数据库的数据容量、各个关系(文件)的数据容量、应用处理频率、 *** 作顺序、响应速度、各个应用的lra和tv、程序访问路径建议,等等。这些数据和要求将直接用于物理数据库的设计。编写出物理设计指南。5物理设计物理设计是对给定的逻辑数据模型配置一个最适合应用环境的物理结构。物理设计的输入要素包括:模式和子模式、物理设计指南、硬件特性、os和dbms的约束、运行要求等。物理设计的输出信息主要是物理数据库结构说明书。其内容包括物理数据库结构、存储记录格式、存储记录位置分配及访问方法等。物理设计的步骤如下:(1)存储记录结构设计综合分析数据存储要求和应用需求,设计存储记录格式。(2)存储空间分配存储空间分配有两个原则:①存取频度高的数据尽量安排在快速、随机设备上,存取频度低的数据则安排在速度较慢的设备上。②相互依赖性强的数据尽量存储在同一台设备上,且尽量安排在邻近的存储空间上。从提高系统性能方面考虑,应将设计好的存储记录作为一个整体合理地分配物理存储区域。尽可能充分利用物理顺序特点,把不同类型的存储记录指派到不同的物理群中。(3)访问方法的设计一个访问方法包括存储结构和检索机构两部分。存储结构限定了访问存储记录时可以使用的访问路径;检索机构定义了每个应用实际使用的访问路径。数据库应用系统的开发是一项软件工程,本文介绍了数据库应用系统的开发步骤(4)物理设计的性能评价①查询响应时间从查询开始到有结果显示之间所经历的时间称为查询响应时间。查询响应时间可进一步细分为服务时间、等待时间和延迟时间。在物理设计过程中,要对系统的性能进行评价。性能评价包括时间、空间、效率、开销等各个方面。⊙cpu服务时间和i/o服务时间的长短取决于应用程序设计。⊙cpu队列等待时间和i/o队列等待时间的长短受计算机系统作业的影响。⊙设计者可以有限度地控制分布式数据库系统的通信延迟时间。②存储空间存储空间存放程序和数据。程序包括运行的应用程序、dbms子程序、os子程序等。数据包括用户工作区、dbms工作区、os工作区、索引缓冲区、数据缓冲区等。存储空间分为主存空间和辅存空间。设计者只能有限度地控制主存空间,例如可指定缓冲区的分配等。但设计者能够有效地控制辅存空间。③开销与效率设计中还要考虑以下各种开销,开销增大,系统效率将下降。⊙事务开销指从事务开始到事务结束所耗用的时间。更新事务要修改索引、重写物理块、进行写校验等 *** 作,增加了额外的开销。更新频度应列为设计的考虑因素。⊙报告生成开销指从数据输入到有结果输出这段时间。报告生成占用cpu及i/o的服务时间较长。设计中要进行筛选,除去不必要的报告生成。⊙对数据库的重组也是一项大的开销。设计中应考虑数据量和处理频度这两个因数,做到避免或尽量减少重组数据库。在物理设计阶段,设计、评价、修改这个过程可能要反复多次,最终得到较为完善的物理数据库结构说明书。建立数据库时,dba依据物理数据库结构说明书,使用dbms提供的工具可以进行数据库配置。在数据库运行时,dba监察数据库的各项性能,根据依据物理数据库结构说明书的准则,及时进行修正和优化 *** 作,保证数据库系统能够保持高效率地运行。6程序编制及调试在逻辑数据库结构确定以后,应用程序设计的编制就可以和物理设计并行地展开程序模块代码通常先在模拟的环境下通过初步调试,然后再进行联合调试。联合调试的工作主要有以下几点:数据库应用系统的开发是一项软件工程,本文介绍了数据库应用系统的开发步骤(1)建立数据库结构根据逻辑设计和物理设计的结果,用dbms提供的数据语言(ddl)编写出数据库的源模式,经编译得到目标模式,执行目标模式即可建立实际的数据库结构。(2)调试运行数据库结构建立后,装入试验数据,使数据库进入调试运行阶段。运行应用程序,测试(3)装入实际的初始数据在数据库正式投入运行之前,还要做好以下几项工作:(1)制定数据库重新组织的可行方案。(2)制定故障恢复规范(3)制定系统的安全规范7运行和维护数据库正式投入运行后,运行维护阶段的主要工作是:(1)维护数据库的安全性与完整性。按照制定的安全规范和故障恢复规范,在系统的安全出现问题时,及时调整授权和更改密码。及时发现系统运行时出现的错误,迅速修改,确保系统正常运行。把数据库的备份和转储作为日常的工作,一旦发生故障,立即使用数据库的最新备份予以恢复。(2)监察系统的性能。运用dbms提供的性能监察与分析工具,不断地监控着系统的运行情况。当数据库的存储空间或响应时间等性能下降时,立即进行分析研究找出原因,并及时采取措施改进。例如,可通修改某些参数、整理碎片、调整存储结构或重新组织数据库等方法,使数据库系统保持高效率地正常运作。(3)扩充系统的功能在维持原有系统功能和性能的基础上,适应环境和需求的变化,采纳用户的合理意见,对原有系统进行扩充,增加新的功能。

以上就是关于数据字典是什么全部的内容,包括:数据字典是什么、Winform框架之字典数据管理、数据字典是什么等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10196194.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-06
下一篇 2023-05-06

发表评论

登录后才能评论

评论列表(0条)

保存