第一章
数据库存储结构:
数据库(DataBase,DB):是按照数据结构来组织、存储和管理数据的仓库,其本身可以看作电子化的文件柜,用户可以对文件中的数据进行增加、删除、修改、查找等操作。数据库提供了一个存储空间用来存储各种数据,可以将数据库看成一个存储数据的容器。
数据库服务器就是指在计算机上安装一个数据库管理程序,如MySQL
使用数据库存储数据时,启动数据库服务,连接到数据库管理系统,然后再去对应的数据库,查找对应的表。
数据库的基本特点:数据结构化,实现数据共享,冗余度低,易扩充,数据独立性高,数据由DBMS统一管理与控制。
常见的数据库产品:
1.Oracle数据库
是由甲骨文(Oracle)公司开发的,覆盖了大、中、小型计算机等几十种计算机型,成为世界上最广泛使用的关系型数据库管理系统。采用标准的SQL并经过美国国家标准技术所(NIST)测试,与IBM/DS、DB2、INGRES、IDMS/R等兼容。可以在vms、dos、Unix、Windows等操作系统下工作。具有良好的兼容性、可移植性和可连接性。
2.SQL server数据库
是由微软公司开发的一种关系型数据库管理系统,广泛用于电子商务、银行等行业。提供了对XML和Internet标准的支持,具有强大的、灵活的、基于web的应用程序管理功能。且界面友好,易于操作。但只能在Windows平台上操作,对操作系统的稳定性要求较高。
3.DB2数据库
由IBM公司研制的一种关系型数据库管理系统,主要用于OS/2、Windows等平台下,具有较好的可伸缩性,可支持从大型计算机到单用户环境。支持标准的SQL,并提供了高层次的数据利用性、完整性、安全性和可恢复性。以及从小规模到大规模应用程序的执行能力,适合海量数据的存储,但操作比较复杂。
4.MySQL数据库
由瑞典的MySQL AB公司开发的,现在是Oracle产品。是以C/S(客户/服务器)模式实现的,是一个多用户、多线程的小型数据库服务器,且MySQL是开源数据的,任何人都可以获取该数据库的源代码并修正其缺陷。具有跨平台的特性,可以在Windows、Linux、Unix、和MacOS等平台上使用,更加方便、快捷、且免费、运营成本低。
5.MongoDB数据库
由10gen开发的一个介于关系数据库和非关系数据库之间的产品,是非关系数据库中功能最丰富,最像关系数据库的。支持的数据结构非常松散,类似JSON的bjson格式,可存储比较复杂的数据类型,支持查询语言非常强大,类似于面向对象的查询语言,可实现类似关系型数据库单表查询的绝大部分功能,且支持对数据建立索引。是一个开源数据库,并且具有高性能、易部署、易使用、存储数据非常方便等特点。
关系模型:一种所谓建立在关系上的模型,包括三个方面:
数据结构,数据存储的问题,二维表(由行和列)
操作指令集合,所有SQL语句
完整性约束,表内数据约束(字段与字段)、表与表之间约束(外键)
关系数据库:是建立在关系模型基础上的数据库。由多张能互相联接的二维行列表格组成的数据库。由关系数据结构、关系操作集合、关系完整性约束三部分组成。
关系型数据库:安全(保存在磁盘上基本不可能丢失)、容易理解、比较浪费空间(二维表)
(大Oracle、DB2;中SQL-server、MySQL;小access)
非关系型数据库:效率高、不安全(断电丢失)
memcached、mongodb、redis(同步到磁盘)
SQL语言(stractured query language,结构化查询语句):是一种数据库查询语言和程序设计语言,是一种关系型数据库语言。主要用于管理数据库中的数据,如查询、存取、更新数据等。
SQL语言分为以下几种:
DCL(data Control Language)数据控制语言:用于控制用户的访问权限。GTANT、RVOKE、COMMIT、ROLLBACK
DDL(data Definition Language)数据定义语言:用于定义数据库、表等。CREAT、ALTER、DROP。
DML(data Manipulation Language)数据操作语言:用于对数据库进行添加、删除和修改操作。DELETE、UPDATE、INSERT
DQL(data Query Language)数据查询语言:用于查询数据。SELECT
简答题:
1.请简述数据库、表和数据库服务器之间的关系。
答:一个数据库可以包含多个数据表、一个数据库服务器中可以创建多个数据库。
2.简述什么是数据。
答:数据是指对客观事件进行记录并可以鉴别的符号,是对客观事物的性质、状态以及相互关系等进行记载的物理符号或这些物理符号的组合。
数据是事实或观察的结果,是对客观事物的逻辑归纳,是用于表示客观事物的未经加工的原始素材。
3.简述什么是SQL语言。
答:意思为结构化查询语言,SQL语言的主要功能就是同各种数据库建立联系,进行沟通,SQL被作为关系型数据库管理系统的标准语言。
4.简述数据库的特点。
答: 1.数据结构化
2.数据的共享性高,冗余度低,易扩充
3.数据独立性高
4.数据由DBMS统一管理和控制
5.简述修改MySQL的两种配置方式。
答:一种是通过DOS命令重新配置,一种是通过在my.ini配置文件中进行配置。
6.简述DDL(数据定义语言)和DML(数据操作语言)的区别
答:数据操作语言DML,用户通过它可以实现对数据库的基本操作。例如,对表中数据的查询、插入、删除和修改。
数据控制语言DCL,用来授予或回收访问数据库的某种特权,并控制数据库操纵事务发生的时间及效果,对数据库实行监视等。
7.简述数据库和数据库系统的异同
答:数据库是“按照数据结构来组织、存储和管理数据的仓库”。数据库能为各种用户共享,具有较小冗余度、数据间联系紧密而又有较高的数据独立性等特点。
数据库系统是由数据库及其管理软件组成的系统。数据库系统由5部分组成:硬件系统、数据库集合、数据库管理系统、应用系统和人员。