大家好,我是十一,关于数据库概念带着大家一起回顾下。
本篇内容
日常生活中,我们在超市和商场购物,商家用于存储货物的地方叫做仓库;我们网上购物,网上的物品信息又存放在哪里呢?有人说也是放仓库呗,仓库寄出即可。我想问的是,大家网上看到的那些信息存放于哪儿呢?比如商品的库存,数量,大小尺寸,样式,类型等属性信息,这些信息也需要存放起来,通过网页展示给用户,如此才能正常无阻碍的完成网上交易。用于存放商品及其属性信息的就是今天的主角:数据库。当然,数据库不仅仅能存储商品及其属性,还可以存储其他数据信息。
今天呢,就带大家一起来揭开“数据库”的神秘面纱。
概念
数据库是以一定方式储存在一起、能与多个用户共享、具有尽可能小的冗余度、与应用程序彼此独立的数据集合,可视为电子化的信息仓库,用户可以对其中的数据进行新增、查询、更新、删除等操作。
数据库是存放数据的仓库。它的存储空间很大,可以存放百万条、千万条、上亿条数据。但是数据库并不是随意地将数据进行存放,是有一定的规则的,否则查询的效率会很低。当今世界是一个充满着数据的互联网世界,充斥着大量的数据。即这个互联网世界就是数据世界。数据的来源有很多,比如出行记录、消费记录、浏览的网页、发送的消息等等。除了文本类型的数据,图像、音乐、声音都是数据。
类型
数据库分为两类,关系型数据库和非关系型数据库。
关系型数据库
关系型数据库,存储的格式可以直观地反映实体(所谓实体,就好比商品,商品属性,商品种类;也可以是学生、老师,班级,年级,学校;亦或者是国家、省、市、县等地)间的关系。
关系型数据库和常见的表格比较相似,关系型数据库中表与表之间是有很多复杂的关联关系的。常见的关系型数据库有Mysql,SqlServer等。在轻量或者小型应用中,使用不同的关系型数据库对系统的性能影响不大,但是在构建大型应用时,则需要根据应用的业务需求和性能需求,选择合适的关系型数据库。
本篇例子均以mysql数据库为例。如下图所示,我创建了3个表,分别用来存储学校、年级、班级信息如图1所示,学校这个表中存储信息如图2所示。
这里要明确两个概念,库和表。在mysql数据库中,我们可以创建多个库,用以专库专用。每个库中可以有多个表,就像我们仓库中可以放很多不同的/不同种类的东西一样。另外,每一个实体不只可以用一张表,比如学生成绩,可能完整的成绩存放在多张表中,比如学生信息表,存放学生的编号、姓名、年龄、性别、班级id、年级id、学校id、家庭住址等;成绩表中存放成绩编号、学生编号、科目编号、科目成绩;科目编号中存放科目编号、科目名称;如下图所示:
这三张表加上之前图1中的三张表联合起来查出学生成绩的完整信息,得出如下表所示完整的成绩单:
综上所述:关系型数据库,是指采用了关系模型来组织数据的数据库,以行和列的形式存储数据,以便于用户理解,关系型数据库这一系列的行和列被称为表,一组表组成了数据库。用户通过查询来检索数据库中的数据,而查询是一个用于限定数据库中某些区域的执行代码。关系模型可以简单理解为二维表格模型,而一个关系型数据库就是由二维表及其之间的关系组成的一个数据组织。
关系型数据库采用结构化查询语言(即SQL)来对数据库进行CRUD(增加,查询,更新,删除)操作。
非关系型数据库
非关系型数据库,又被称为NoSQL(Not Only SQL ),意为不仅仅是SQL( Structured QueryLanguage,结构化查询语言)。NoSQL描述的是大量结构化数据存储方法的集合,根据结构化方法以及应用场合的不同,将NoSQL分为Column-Oriented、Key-Value、Document-Oriented三大类。本篇呢对此不再展开详细的介绍,感兴趣的同学可以自行百度了解下。
今日作业:
自行下载mysql数据库并安装,安装完成后创建本篇中的库以及表。
好了,今天的内容到此结束,我们下期再见!Bye~