数据库概述

数据库概述

数据库(database,简称db), 按照某种规则存放到计算机存储设备上可以被应用或用户访问的数据仓库。持久化存储数据的,其实数据库就是一个文件系统,我们用到的一些数据可以存储到数据库中,这样即使关机数据也不会丢失。
数据库管理系统(DataBase Management System,简称DBMS):指的是能够操作和管理数据库的软件,开发者可以通过使用数据库管理系统来访问数据库中的数据。常用的关系型数据库管理系统如下:

  • oracle
    由oracle开发。
  • sqlserver
    由微软公司开发,旧版本只能运行在windows系统上,新版支持linux系统。
  • DB2
    由IBM公司开发。
  • mysql
    由瑞典MySQL AB 公司开发,后被sun公司收购,现属于oracle公司旗下, Community版本 免费。
  • postgresql
    加州大学伯克利分校以教学目的开发的数据库系统,开源免费。


数据在数据库中是以表的方式存储的,在数据库中可以创建多个表,这里可以把数据库看做是一个excel,表就相当于excel中的sheet。下图是一个数据库中表的内容:

表

最上面的一行内容叫做字段,下面是一行一行的数据,一个表中可以有多个字段和多行数据。
字段在数据库中都有数据类型,就像是java中的int,String。

SQL
SQL全称是Structure Query Language(结构化查询语言),是关系型数据语言的标准,各大关系型数据库厂商都实现了这套标准,可以使用SQL通过数据库管理系统来操作数据库中的数据。因为SQL是标准,所以不论是哪一种数据库管理系统,都可以使用SQL来操作数据库中的数据。不过各个厂商在支持SQL标准的同时,在自己的数据库管理系统中做了一些扩展,这些扩展简称方言。

SQL的分类

  • DDL(Data Definition Language):数据定义语言,用来操作数据库对象:库、表、列等;
  • DML(Data Manipulation Language):数据操作语言,用来增删改数据库中的数据;
  • DCL(Data Control Language):数据控制语言,用来设置访问权限和安全级别;
  • DQL(Data Query Language):数据查询语言,用来查询数据库中的数据。

注:在实际开发中通常将数据库管理系统称为数据库。

下图展示了以上名词之间的关系:

数据库名词之间的关系

用户可以使用SQL来通过数据库管理系统操作数据库中的表数据。