拓冰建站拓冰建站
首页 / 资讯中心 / 正文

在关系数据库中,保证数据独立性主要依靠三级模式结构(即外模式、模式和内模式)以及两级映像

在关系数据库中保证数据独立性主要依靠三级模式结构即外模式、模式和内模式以及两级映像外模式/模式映像、模式/内模式映像。这种结构使得应用程序与数据的逻辑结构逻辑独立性和物理存储结构物理独立性相互解耦从而实现高度的数据独立性。完整性约束A用于保证数据正确性和一致性数据字典C是元数据的集合用于描述数据库结构视图D可辅助实现逻辑独立性但其本身是三级模式结构中外模式的一种体现不是根本机制。# 三级模式结构示意概念性表示classDatabaseSchema:def__init__(self):self.external_schema[视图1,视图2]# 用户视角逻辑独立性基础self.conceptual_schema全局E-R模型/关系模式# 逻辑设计层self.internal_schema存储结构、索引、文件组织# 物理层# 两级映像self.mapping_external_to_conceptual外模式/模式映像self.mapping_conceptual_to_internal模式/内模式映像三级模式结构中的“模式”Schema又称概念模式或逻辑模式是数据库中全体数据的逻辑结构和特征的描述是所有用户的公共数据视图。它独立于具体的应用程序和物理存储细节定义了数据库中所有实体、属性、关系、完整性约束如主键、外键、取值范围等以及数据之间的逻辑联系通常由DBA设计并用DDL数据定义语言定义一个数据库有且仅有一个模式。与之对比外模式External Schema是模式的子集是用户或应用程序所看到的数据视图面向特定用户群体。一个数据库可有多个外模式如财务部门视图、人事部门视图每个外模式通过外模式/模式映像与模式关联支持逻辑独立性即模式改变时只要映像调整外模式可不变应用无需修改。内模式Internal Schema又称存储模式描述数据的物理存储结构和存取方法包括文件组织方式堆、索引、散列、索引结构、数据压缩/加密、存储路径、块大小等依赖于具体DBMS和硬件平台。一个数据库只有一个内模式通过模式/内模式映像与模式关联支撑物理独立性即存储结构改变时只需调整该映像模式和外模式不受影响。核心区别总结维度模式Conceptual Schema外模式External Schema内模式Internal Schema视角全局逻辑视图DBA/系统级局部用户视图应用/用户级物理存储视图系统实现级内容实体、关系、约束、逻辑结构子集视图授权限定用户定制逻辑存储结构、索引、存取路径、物理细节数量唯一可有多个唯一独立性作用中介层连接外与内是独立性的枢纽支撑逻辑独立性支撑物理独立性# 示例学生选课数据库的三级模式示意概念性classDBThreeLevelSchema:# 内模式物理层→ 如Student表按B树索引存储在磁盘块0x1A2FCourse表哈希分区internal{Student:BTree on SNO,SC:Hash on (SNO, CNO)}# 模式逻辑层→ DDL定义的核心结构conceptual CREATE TABLE Student(SNO CHAR(10) PRIMARY KEY, SNAME VARCHAR(20), AGE INT); CREATE TABLE Course(CNO CHAR(5) PRIMARY KEY, CNAME VARCHAR(30)); CREATE TABLE SC(SNO CHAR(10), CNO CHAR(5), GRADE INT, PRIMARY KEY(SNO,CNO), FOREIGN KEY(SNO) REFERENCES Student(SNO)); # 外模式用户视图→ 如教师只看课程与成绩external_teacherCREATE VIEW TeacherView AS SELECT CNO, CNAME, GRADE FROM Course, SC WHERE Course.CNO SC.CNO;
分享:

看完干货,该让你的企业上线了

免费需求沟通 · 48 小时内出具建站方案 · 河南本地可上门