首都农村医学人才培养体系建设与农村医学人才培养的研究与实践 网站电子元器件做哪个网站好
news/
2025/9/27 19:05:47/
文章来源:
首都农村医学人才培养体系建设与农村医学人才培养的研究与实践 网站,电子元器件做哪个网站好,帝国cms+wordpress,网站网页访问权限目录 什么是数据库数据库的概念模型层次模型网状模型关系模型 为什么要使用关系型数据库完整性约束结构化查询语言SQL基本语句 什么是数据库
考虑这些问题#xff1a;当用户使用软件计算时#xff0c;如果想要保存计算结果或者想选择不同的题目#xff0c;是否要保存、读取… 目录 什么是数据库数据库的概念模型层次模型网状模型关系模型 为什么要使用关系型数据库完整性约束结构化查询语言SQL基本语句 什么是数据库
考虑这些问题当用户使用软件计算时如果想要保存计算结果或者想选择不同的题目是否要保存、读取多个不同的文件呢这样的效率高吗这种数据管理策略合适吗假设有上万套练习题时是否需要保存上万个文件呢 很明显我们需要数据库的帮助。在信息化社会充分有效地管理和利用各类信息资源是进行科学研究和决策管理的前提条件。 数据库技术是管理信息系统、办公自动化系统、决策支持系统等各类信息系统的核心部分是进行科学研究和决策管理的重要技术手段。 数据库时长期存储在计算机内、有组织、可共享的大量数据的集合。它的目的是提供一种可以方便、高效管理数据库信息的途径。 数据库有很多种类型从最简单的存储有各种数据的表格到能够进行海量数据存储的大型数据库系统都在各个方面得到了广泛的应用。
数据库是“按照数据结构来组织、存储和管理数据的仓库”。在经济管理的日常工作中常常需要把某些相关的数据放进这样“仓库”并根据管理的需要进行相应的处理。
例如企业或事业单位的人事部门常常要把本单位职工的基本情况(职工号、姓名、年龄、性别、籍贯、工资、简历等)存放在表中这张表就可以看成是一个数据库。
有了这个数据仓库就可以根据需要随时查询某职工的基本情况也可以查询工资在某个范围内的职工人数等等。这些工作如果都能在计算机上自动进行那的人事管理就可以达到极高的水平。
此外在财务管理、仓库管理、生产管理中也需要建立众多的这种“数据库”使其可以利用计算机实现财务、仓库、生产的自动化管理。
J.Martin给数据库下了一个比较完整的定义数据库是存储在一起的相关数据的集合这些数据是结构化的无有害的或不必要的冗余并为多种应用服务数据的存储独立于使用它的程序对数据库插入新数据修改和检索原有数据均能按一种公用的和可控制的方式进行。
当某个系统中存在结构上完全分开的若干个数据库时则该系统包含一个“数据库集合”。
数据库的概念模型 层次模型
优点
数据结构简单清晰。 因为记录之间的联系用有向边表示这种联系在DBMS中通常使用指针实现查询效率高。层次模型数据库性能优于关系数据库不低于网状数据库。 提供了良好的完整性支持。进行插入操作时如果没有对应的双亲结点就不能插入它的子女结点值。进行删除操作时如果删除双亲结点则相应的子女结点值也将被同时删除。 缺点
现实世界中的很多联系是非层次性的。如果结点之间具有多对多联系不再适合使用层次模型表示。如果一个子女结点确实具有多个双亲结点使用层次结构模型表示的时候就会出现大量的冗余且操作复杂。 查询子女结点必须通过双亲结点。 由于结构严密层次命令趋于程序化。
网状模型
优点
能够更为直接地表示现实世界。 具有良好的性能存取效率高。 缺点
结构复杂伴随应用环境的扩大数据结构变得越来越复杂不利于最终用户掌握。 网状模型的数据定义语言和数据管理语言复杂。 由于记录之间的联系通过存取路径实现应用程序在访问数据的时候必须选择恰当的存取路径因此用户必须了解系统结构的细节导致加重了编写应用程序的负担。
关系模型
优点
关系模型建立在严格的数学概念的基础之上。 关系模型概念单一。无论是实体还是实体之间的联系都用关系来表示。对数据的检索和更新结果也是基于关系表的。所以数据结构简单清晰用户易懂易用。 关系模型的存取路径对用户透明从而具有较高的数据独立性更好的安全保密性也简化了程序员的工作和数据库开发建立的工作。 缺点
由于存取路径对用户是透明的查询效率往往不如格式化数据模型。 为了提高系统性能数据库管理系统必须对用户的查询请求进行优化。
为什么要使用关系型数据库
关系型数据库的优势
便于理解二维表构造非常贴近逻辑 应用方便支持通用的SQL结构化查询语言语句 易于维护全部由表结构组成文件格式一致 复杂操作可以用SQL句子多个表之间做非常繁杂的查询 事务管理促使针对安全性性能很高的数据信息浏览规定得到完成。 关系型数据库存在的不足
读写性能差尤其是海量信息的效率高读写能力 固定不动的表构造灵便度稍欠 高并发读写时硬盘I/O存在瓶颈 可扩展性不足不像web server和app server那样简单的添加硬件和服务节点来拓展性能和负荷工作能力。 非关系型数据库概念介绍 非关系型数据库指非关系型的分布式系统的且一般不确保遵照ACID标准的数据储存系统。
非关系型数据库算是一种数据结构化储存的集合可以是文档或键值对等。
非关系型数据库的本质是传统关系型数据库的功能阉割版本通过去掉不需要的功能来提高性能。
非关系型数据库的类型
键值储存数据库 列储存数据库 文档型数据库 图数据库 非关系型数据库的优点
格式灵活数据存储格式非常多样应用领域广泛而关系型数据库则只适用基础的关系模型。 性能优越NOSQL是根据键值对的不用历经SQL层的分析因此 性能非常高。 可扩展性基于键值对数据之间耦合度极低因此容易水平扩展。 低成本非关系型数据库部署简易且大部分可以开源使用。 非关系型数据库的不足
不支持sql学习和运用成本比较高 无事务处理机制 数据结构导致复杂查询不容易实现。 关系型与非关系型数据库的区别 成本Nosql数据库易部署不用像Oracle那般花费较高成本选购。 查询速率Nosql数据库将数据储存于缓存当中不用历经SQL层的分析关系型数据库将数据储存在电脑硬盘中查询速率远不如Nosql数据库。 储存格式Nosql的储存文件格式是key,value方式、文本文档方式、照片方式这些能储存的对象种类灵活关系数据库则只适用基础类型。 可扩展性关系型数据库有join那样的多表查询机制限定造成拓展性较差。Nosql依据键值对数据中间沒有耦合度因此容易水平拓展。 数据一致性非关系型数据库注重最终一致性关系型数据库注重数据整个生命周期的强一致性。 事务处理SQL数据库支持事务原子性粒度控制且方便进行事务回滚NoSQL也支持事务处理但可靠性不足其价值在于可扩展性和大数据量处理。
其实说白了人总是在为了方便自己而做一些事情的在大多数使用场景中关系型数据库更方便更好理解
完整性约束
数据完整性 要想了解这三类完整性约束首先要了解什么是数据完整性。 数据完整性是指数据库中存储的数据是有意义的或正确的和现实世界相符。关系模型中三类完整性约束 – 实体完整性Entity Integrity – 参照完整性Referential Integrity – 用户定义的完整性User-defined Integrity • 实体完整性和参照完整性是关系模型必须满足的完整性约束条件被称作是关系的两个不变性应该由关系系统自动支持
实体完整性 • 保证关系中的每个元组都是可识别的和惟一的 • 指关系数据库中所有的表都必须有主键而且表中不允 许存在如下记录 – 无主键值的记录 – 主键值相同的记录 • 原因实体必须可区分 例如
上图就出现了主键值学号是主键重复的情况。当在表中定义了主键时数据库管理系统会自动保证数据的实体完整性即保证不允许存在主键值为空的记录以及主键值重复的记录。
参照完整性 也称为引用完整性 • 现实世界中的实体之间往往存在着某种联系在关系模型中实体以及实体之间的联系都是用关系来表示的这样就自然存在着关系与关系之间的引用 • 参照完整性就是描述实体之间的联系的 • 参照完整性一般是指多个实体或关系之间的关联关系
此完整性涉及到了外键 • 参照完整性规则就是定义外键与被参照的主键之间的引用规则 • 外键一般应符合如下要求 – 或者值为空 – 或者等于其所参照的关系中的某个元组的主键值
用户定义完整性 • 也称为域完整性或语义完整性 • 是针对某一具体应用领域定义的数据约束条件 • 反映某一具体应用所涉及的数据必须满足应用语义的要求 • 实际上就是指明关系中属性的取值范围防止属性的值与应用语义矛盾 • 关系模型应提供定义和检验这类完整性的机制以便用统一的系统方法处理它们而不要由应用程序承担这一功能
结构化查询语言SQL
结构化查询语言Structured Query Language简称SQL是一种特殊目的的编程语言是一种数据库查询和程序设计语言用于存取数据以及查询、更新和管理关系数据库系统。 结构化查询语言是高级的非过程化编程语言允许用户在高层数据结构上工作。它不要求用户指定对数据的存放方法也不需要用户了解具体的数据存放方式所以具有完全不同底层结构的不同数据库系统, 可以使用相同的结构化查询语言作为数据输入与管理的接口。结构化查询语言语句可以嵌套这使它具有极大的灵活性和强大的功能。
基本语句
结构化查询语言包含6个部分 1、数据查询语言DQL: Data Query Language其语句也称为“数据检索语句”用以从表中获得数据确定数据怎样在应用程序给出。保留字SELECT是DQL也是所有SQL用得最多的动词其他DQL常用的保留字有WHEREORDER BYGROUP BY和HAVING。这些DQL保留字常与其它类型的SQL语句一起使用。 2、数据操作语言DMLData Manipulation Language其语句包括动词INSERT、UPDATE和DELETE。它们分别用于添加、修改和删除。 3、事务控制语言TCL它的语句能确保被DML语句影响的表的所有行及时得以更新。包括COMMIT提交命令、SAVEPOINT保存点命令、ROLLBACK回滚命令。 4、数据控制语言DCL它的语句通过GRANT或REVOKE实现权限控制确定单个用户和用户组对数据库对象的访问。某些RDBMS可用GRANT或REVOKE控制对表单个列的访问。 5、数据定义语言DDL其语句包括动词CREATE,ALTER和DROP。在数据库中创建新表或修改、删除表CREATE TABLE 或 DROP TABLE为表加入索引等。 6、指针控制语言CCL它的语句像DECLARE CURSORFETCH INTO和UPDATE WHERE CURRENT用于对一个或多个表单独行的操作。
大概就是以上内容简单阐述了一下关于关系型数据库的内容如果想了解更多可以阅读这篇文章 tink
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/919822.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!