数据库概述

简而言之,数据库(DataBase)就是一个存储数据的仓库。为了方便数据的存储和管理,它将数据按照特定的规律存储在磁盘上。通过数据库管理系统,可以有效的组织和管理存储在数据库中的数据。如今,已经存在了Oracle、sQLServer、MySQL等诸多优秀的数据库。

1、数据库理论基础

1.1 数据存储方式

如今数据库已经无处不在了。一个网站需要有数据库来存储数据。一个学校需要用数据库来存储学生和教师的信息。一个公司需要用数据库来存储员工的信息和公司的资料。要学习数据库,必须先要了解数据库是如何存储数据的。

数据存储分为三个阶段:人工管理阶段、文件系统阶段和数据库系统阶段。

(1)人工管理阶段:数据主要存储在纸带、磁带等介质上,或者直接通过手工记录。

(2)文件系统阶段:数据都以文件的形式出现,然后通过文件系统来管理这些文件。

(3)数据库系统阶段:数据库系统阶段开始使用专门的数据库来管理数据,用户可以在数据库系统中建立数据库,然后在数据库中建立表。

1.2 数据库泛型

数据库泛型就是数据库应该遵循的规则。数据库泛型也称为范式。目前关系数据库最常用的四种范式分别是:第一范式(1NF)、第二范式(2NF)、第三范式(3NF)和BCN范式(BCNF)。

在设计数据库时,数据库需要满足的最低要求的范式是第一范式。第一范式要求表中不能有重复字段,并且每个字段不能再拆分。如果一个数据库连第一范式都不满足的话,那就不能称之为关系数据库了。只有满足了第一范式的要求,才可以在这个关系数据库中创建表。

在满足第一范式的基础上,可以将数据库中进行进一步的细化。细化后可以使数据库满足第二范式的要求。依次进行细化,可以得到第三范式、BCN范式。

2、数据库技术构成

2.1 数据库系统

数据库系统(DataBase System,简称为DBS)的范围比数据库大很多。数据库系统不是一个单纯的数据库,而是由数据库、数据库管理系统、应用开发工具构成。很多时候,数据库管理员和用户可以当成数据库系统的一份子。

数据库就是存储数据的地方。数据库管理系统( DataBase Management System,简称 DBMS)是用来定义数据、管理和维护数据的软件。它是数据库系统的一个重要的组成部分。应用系统是需要使用数据库的软件。比如学员管理系统就是一个应用系统,这个应用系统需要数据库来管理它的数据。应用开发工具就是用来开发应用系统的。

2.2 SQL语言

SQL (Structured Query Language)语言的全称是结构化查询语言。数据库管理系统通过SQL语言来管理数据库中的数据。
SQL语言分为三个部分:数据定义语言( Data Definition Language,简称为DDL)、数据操作语言( Data Manipulation Language,简称为DML)和数据控制语言(Data Control Language,简称为DCL) 。

(1)DDL语句:数据库定义语言主要用于定义数据库、表、视图、索引和触发器等。其中包括create语句、alter语句和drop语句。create语句主要用于创建数据库、创建表和创建视图等。alter语句主要用于修改表的定义、修改视图的定义等。drop语句主要用于删除数据库、删除表和删除视图等。

(2)DML语句:数据操纵语言主要用于插入数据、查询数据、更新数据和删除数据。其中包括insert 语句、select语句和update语句。insert 语句用于插入数据,select语句用于查询数据,update语句用于更新数据,delete 语句用于删除数据。

(3)DCL语句:数据控制语言主要用于控制用户的访问权限。其中包括grant 语句和revoke 语句。grant 语句用于给用户增加权限,revoke语句用于收回用户的权限。

2.3 数据库访问技术

应用系统中,程序语言需要使用数据库访问技术来访问数据库。只有使用了数据库访问技术,程序中嵌入的SQL语句才会起作用。不同程序语言访问数据库的方式是不一样的。

JDBC是一种用于执行SQL语句的Java API。通过JDBC可以访问多种关系数据库。JDBC由一组用Java语言编写的类和接口组成。使用.JDBC时,必须要安装驱动程序Connector/J。

PHP中为程序员提供了MySQL功能模块,PHP5以后开始提供mysqli接口。PHP可以通过MySQL功能模块和mysqli接口来访问MySQL数据库。

3、数据库基础

3.1 常见数据库系统

如今已经存在很多优秀的商业数据库,如甲骨文(Oracle)公司的Oracle数据库、IBM公司的DB2数据厍、微软公司的SQL Server数据库和Access数据库。同时,还有很多优秀的开源数据库,如MySQL数据库、PostgreSQL数据库等。

  1. 甲骨文的Oracle
  2. IBM的DB2
  3. 微软的Access和SQL Server
  4. 开源PostgresQL
  5. 开源MySQL

3.2 为什么要使用mysql

MySQL数据库有很多优势,下面总结了其中几个优势:

  1. MySQL是开放源代码的数据库
  2. Mysql 的跨平台性
  3. 价格优势
  4. 功能强大且使用方便

版权声明:本文为weixin_45441862原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。