MySQL必知必会 第一章

378 阅读3分钟

第一章 了解SQL

1.1 数据库基础

  • 1.1.1 什么是数据库

就该书而言,数据库是一个以某种有组织的方式存储的数据集合。 数据库(database) 保存有组织的数据的容器(通常是一个文件或一组数据)

  • 1.1.2 表

表是一种结构化的文件,可以用来存储某种特定类型的数据。 表(table) 某种特定类型数据的结构化清单。 储存在表中的数据是一种类型的数据或一个清单,不应该将顾客的清单和订单的清单储存在同一个数据库表中。
数据库中的每个表都有一个名字,用来标识自己。此名字是唯一的。但是在不同数据库中,表名可以相同。

  • 1.1.3 列和数据

表由列组成。列中存储着表中某部分的信息。 列(column) 表中的一个字段。所有表都是由一个或多个列组成的。
例如:在顾客表中,一个列存储着顾客编号,另一个列存储着顾客名。
数据库中每个列都有相应的数据类型。数据类型定义列可以存储的数据种类。
数据类型(datatype) 所容许的数据的类型。每个列都有相应的数据类型,它限制(或容许)该列中存储的数据。
数据类型限制存储在列中的数据种类。帮助正确的排序数据,并在优化磁盘方面起重要的作用,因此,创建表时,数据类型应该特别关注。

  • 1.1.4 行

表中的数据是按行存储的,所保存的每个记录存储在自己的行内。
行(row) 表中的一个记录。

  • 1.1.5 主键

表中的每一行都应该有可以唯一标识自己的一列(或一组列)。
主键(primary key) 一列(或一组列),其值能够唯一区分表中的每个行。唯一标识表中每行的这个列(或这组列)称为主键。主键用来表示一个特定的行,没有主键更新或删除表中特定行比较困难。
表中的任和列都可以作为主键,只要满足两个条件:
*任意两行都不具有相同的主键值。
*每个行都必须具有一个主键值(主键值不能为NULL)。
主键通常定义在表的一列上,但是也可以使用多个列作为主键。此时,所有列值的组合必须是唯一的,但是单个列的值可以不唯一。

1.2 什么是SQL

SQL是结构化查询语言(Structured Query Language)的缩写。SQL是一种专门用来与数据库通信的语言。

SQL由很少的词构成,这是有意为之。

SQL的优点:

  • SQL不是某个特定的数据库供应商专有的语言。几乎所有重要的DBMS都支持SQL。
  • SQL简单易学。
  • SQL尽管看上去很简单但实际上是一种强有力的语言,灵活使用其语言元素,可以进行非常复杂和高级的数据库操作。