概述
在大数据、云计算等概念被广泛提及的今天,数据库作为入门知识,它的重要性想必大家都知道了,今天小编为大家整理了一些数据库的基础知识,快快收藏吧~
目录:
一、基本概念
二、数据库分类
三、数据库模型
四、数据库语言四大类
五、五个基本的关系代数操作
六、完整性
七、常用关系型数据库
八、国产化数据库
一、基本概念
首先,我们先来辨析一下几个关于数据库的基本概念,什么是 DB ?什么是 DBMS ?他们之间的联系和区别是什么?
1. Data:数据,是数据库中存储的基本对象,是描述事物的符号记录。
2. DB:数据库,是长期储存在计算机内、有组织的、可共享的大量数据的集合。
3. DBMS:数据库管理系统,是位于用户与操作系统之间的一层数据管理软件,用于科学地组织、存储和管理数据、高效地获取和维护数据。
4. DBS:数据库系统,指在计算机系统中引入数据库后的系统,一般由数据库、数据库管理系统、应用系统、数据库管理员(DBA)构成。
5.实体和属性:客观存在并可相互区别的事物称为实体。实体所具有的某一特性称为属性。
6.E-R图:即实体-关系图,用于描述现实世界的事物及其相互关系,是数据库概念模型设计的主要工具。
7.关系模式:从用户观点看,关系模式是由一组关系组成,每个关系的数据结构是一张规范化的二维表。
数据库是通过DBMS创建和操纵的容器。数据库可以是保存在硬设备上的文件,也可以不是。用户并不直接访问数据库,而是使用DBMS,DBMS为人们提供方便、高效的环境来存储和检索数据的方法。
二、数据库分类
早期比较流行的数据库模型有三种,分别为层次式数据库、网络式数据库和关系型数据库。在当今的互联网中,最常用的数据库主要是两种,即关系型数据库和非关系型数据库。
1.关系型数据库
关系数据库是创建在关系模型基础上的数据库,借助于集合代数等数学概念和方法来处理数据库中的数据,现实世界中的各种实体以及实体之间的各种联系均用关系模型来表示,它是数据存储的传统标准,标准数据查询语言sql就是一种关系数据库的语言,这种语言执行对关系数据库中数据的检索和操作。
2.非关系型数据库
非关系型数据库主要是基于“非关系模型”的数据库(由于关系型太大,所以一般用“非关系型”来表示其他类型的数据库)。非关系型数据库严格上不是一种数据库,应该是一种数据结构化存储方法的集合,可以是文档或者键值对等。优点是格式灵活,可存储文档、图片等形式的数据,且速度快、扩展性高、成本低。
三、数据库模型
数据库模型是用来抽象、表示和处理现实世界中的数据和信息的工具,是对现实世界的模拟,是数据库系统的核心和基础;其组成元素有数据结构、数据操作和完整性约束。
数据库模型是一个描述数据、数据联系、数据语义以及一致性约束的概念工具的集合,提供了一种描述物理层、逻辑层和视图层数据库设计的方式。
- 数据库模型
数据库模型的表现形式分为三种,分别是概念模型、逻辑模型和物理模型。
概念模型:也称信息模型,是按用户的观点来对数据和信息建模,主要用于数据库设计。
逻辑模型:是按计算机系统的观点对数据建模,用于DBMS实现。
物理模型:是对数据最底层的抽象,描述数据在系统内部的表示方式和存取方法,在磁盘或磁带上的存储方式和存取方法,是面向计算机系统的。
2.数据库架构(数据库抽象)
模型的结构部分规定了数据如何被描述(例如树、表等),它描述了在数据库中结构化和操纵数据的方法。数据库的抽象层次有三层,从下至上分别是物理层、逻辑层和视图层。
物理层:记录被描述为存储块,编译器为程序员屏蔽了此状态。
逻辑层:用定义类型、定义记录类型的相互关系进行描述每个记录。
视图层:屏蔽了数据类型细节的一组应用程序,提供了防止用户访问数据库的某些部分的安全性机制。
这种架构保证了物理模式隐藏在逻辑模式下,且通常可以在应用程序丝毫不受影响的情况下被更改。
四、四大数据库语言
SQL语言,是结构化查询语言(Structured Query Language)的简称。SQL语言是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;同时也是数据库脚本文件的扩展名。
SQL语言共分为四大类:数据查询语言DQL,数据定义语言DDL,数据操纵语言DML,数据控制语言DCL。
1.DQL(Data Query Language):数据库查询语言
数据表记录的查询。
select
2.DDL(Data Definition Language):数据库定义语言
定义关系模式、删除关系、修改关系模式。
如:create,drop,alter,truncate
3.DML(Data Manipulation Language):数据库操纵语言
在数据库表中更新,增加和删除记录
如:update,insert,delete
4.DCL(Data Control Language):数据库控制语言
用来授权或回收访问数据库的某种特权,并控制数据库操纵事务发生的时间及效果。
如:grant,revoke,commit,rollback work
五、五个基本的关系代数操作
关系代数是以关系为运算对象的一组高级运算的集合。由于关系定义为属性个数相同的元组的集合,因此集合代数的操作就可以引入到关系代数中。五个关系代数操作分别是:并、差、笛卡尔积、投影和选择,它们组成了关系代数完备的操作集。
并(Union):设关系R和关系S具有相同的元数n,且相应的属性取自同一个域,则关系R和关系S的并由属于R或属于S的元组组成,其结果仍为n元的关系
差(Difference):设关系R和关系S具有相同的元数n,且相应的属性取自同一个域,则关系R和关系S的差由属于关系R而不属于关系S的元组组成,其结果仍为n元的关系
笛卡尔积(Cartesian Product):设关系R和关系S的元数分别为r和s。定义R和S的笛卡尔积是一个(r+s)元的元组集合,每个元组的前r个分量来自R的一个元组,后s个分量来自S的一个元组
投影(Projection):对关系进行垂直分割,消去某些列,并重新安排列的顺序,再删去重复元组
选择(Selection):根据某些条件对关系做水平分割,即选择符合条件的元组
六、完整性
数据完整性是指数据库中存储的数据是有意义的或正确的,和现实世界相符。关系模型中三类完整性约束:
实体完整性(Entity Integrity)
参照完整性(Referential Integrity)
用户定义的完整性(User-defined Integrity)
实体完整性和参照完整性是关系模型必须满足的完整性约束条件,被称作是关系的两个不变性,应该由关系系统自动支持。
实体完整性:保证关系中的每个元组都是可识别的和唯一的,关系数据库中所有的表都必须有主键,而且表中不允许存在如下记录:无主键值的记录、主键值相同的记录。如学生表中,每个学生的学号必须是存在且唯一的。
参照完整性:对于永久关系的相关表,在更新、插入或删除记录时,如果只改其一,就会影响数据的完整性。如删除父表的某记录后,子表的相应记录未删除,致使这些记录称为孤立记录。
用户定义的完整性:指对关系中每个属性的取值作一个限制(或称为约束)的具体定义。比如 性别属性只能取”男“或”女“ ,年龄的取值范围,可以是 0-100 的整数。
七、常用关系型数据库
目前,商品化的数据库管理系统以关系型数据库为主导产品,技术比较成熟。常见的关系型数据库有MySQL 、SQL Server、Oracle、Sybase、DB2等。这些产品都支持多平台,如 UNIX、VMS、Windows,但支持的程度不一样。下面为大家总结各常用关系型数据库的特点
1.MySQL
开源且跨平台,由瑞典MySQLAB公司开发,目前属于Oracle旗下公司。适合个人或中小型企业,分为社区版和商业版,搭配PHP,Linux和Apache可组成良好的开发环境。优点是开源免费、体积小、速度快、总体拥有成本低,且可适应多线程、多用户和健壮的SQL数据库服务器。MySQL服务器支持关键任务、重负载生产系统的使用,也可以将它嵌入到一个大配置(mass- deployed)的软件中去。
2.SQL Server
不跨平台,不开源,由Microsoft公司开发,适合大中型企业和单位的数据库管理系统,广泛用于电子商务、银行、保险、电力等与数据库有关的行业。一般用于Web上存储数据,有对XML和Internet标准的丰富支持。优点是功能全面、效率高,使用方便可伸缩性好与相关软件集成程度高,界面友好,易学易用。
3.Oracle
跨平台不开源,由甲骨文公司开发,主要是针对大型企业,是世界上使用最广泛的关系数据系统之一。在数据库领域一直处于领先地位,率先推出了分布式数据库、客户/服务器结构等概念。优点是兼容性好、系统可移植性好、使用方便、功能强,适用于各类大、中、小、微机环境,提供高效率、可靠性好的适应高吞吐量的数据库解决方案。
4.Sybase
跨平台不开源,由美国Sybase公司开发,是一种典型的UNIX或WindowsNT平台上客户机/服务器环境下的大型数据库系统。提供了套应用程序编程接口和库,可以与非Sybase数据源及服务器集成,允许在多个数据库之间复制数据,适于创建多层应用。该数据库是一个真正开放的、高性能的数据库,支持优化查询,具有较好的数据安全性。
5.DB2
跨平台不开源,由美国IBM公司开发,支持多媒体、web关系数据库管理系统,可以灵活服务于中小型电子商务解决方案,能在所有主流平台上运行(包括Windows),最适于海量数据,DB2在企业级的应用最为广泛。数据库基于UNIX的系统和个人计算机操作系统,支持标准的SQL语言,具有与异构数据库相连的GATEWAY。优点是速度快、可靠性好,具有较好的可伸缩性,但只有硬件平台选择了IBM的AS/400,才能选择使用DB2数据库管理系统。
八、国产化数据库
前一章提到的关系型数据库都是MySQL、SQL Server、Oracle等一些国外的数据库,在越来越追求信息系统自主可控的今天,国产化产品线的需求日益高涨。国产数据库经过十余年的发展,在产品、技术方面也有了较大飞跃,下面为大家简要介绍一下国内发展势态突出的四家数据库软件企业。
1.人大金仓
人大金仓是中国电子科技集团公司<CETC)成员单位,成立于1999年,是中国自主研发数据库产品和数据管理解决方案的领军企业,先后获得CETC旗下普华基础软件股份有限公司和太极计算机股份有限公司的战略注资,被纳入CETC整体发展战略。在增资扩股后,人大金仓的资产规模跃居国产数据库企业之首。
2.达梦
武汉达梦成立于2000年11月,其前身是华中科技大学数据库与多媒体研究所,总部位于武汉,在北京、广州、海南成立了分公司,在上海成立了子公司,在安徽等省市设有办事处。2008年,中国软件与技术服务股份有限公司注资达梦数据库,成为公司第一大股东。达梦数据库是通过国家安全三级认证(2001年)、通过10TB数据库容量测试<2005年)的数据库产品,现已通过100TB数据库容量测试,通过中国人民解放军军B级认证的数据库产品。
3.南大通用
南大通用成立于2004年5月,是南开大学下属的天津南开创元信息技术有限公司之控股子公司,注册资本2000万元,总资产达1.2亿元。南大通用以数据处理与数据安全技术为核心竞争力,依据企业自我开发和引进先进技术相结合的方针,不断开发科技含量高、附加值较大、市场急需的具有自主品牌的软件产品,为我国电子政务、电子商务、信息安全等领域提供基础产品支撑和专业服务。
4.神舟通用
神舟通用是由北京神舟航天软件技术有限公司、天津南大通用数据技术有限公司、东软集团股份有限公司、浙大网新科技股份有限公司四家公司共同投资组建的国家高新技术软件公司,注册资金6000万元。现有员工300余人,其中博士8名,硕士100余名,具有5年以上数据库产品研发经验的中高级技术人员达70余人。神舟通用公司拥有北京研发中心、天津研发中心、杭州研发中心三家产品研发基地,并在沈阳、济南、西安、上海、武汉、深圳等地设立了本地化的营销和服务中心,并与浙江大学、北航、北京大学、中科院软件所等高校和科研院所开展了深度合作。神舟通用是国家“核高基”重大科技项目之数据库产品的核心研制单位,通过了国家软件企业认证资格、高新技术企业认证、ISO9001认证、涉及国家秘密的计算机信息系统集成资质认证。
看了以上的知识总结,大家有没有对数据库的基础知识有更进一步的理解和巩固呢?
最后
以上就是顺心曲奇为你收集整理的数据库基础知识大全的全部内容,希望文章能够帮你解决数据库基础知识大全所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复