MySQL必知必会—概念篇

术语

不一样的人可能会使用相同的数据库术语表示不一样的事物,会形成一些混乱,下面是一张重要的数据库术语清单。mysql

数据库(database)

数据库是保存有组织的数据的容器(一般是一个文件或一组文件)。git

易混点:人们常常用“数据库”这个词表明他们使用的数据库软件。数据库软件是 DBMS(数据库管理系统),例如 MySQL 就是一种 DBMS ,而数据库是经过 DBMS 建立和操纵的容器。咱们一般不直接访问数据库,而是经过使用 DBMS 来访问数据库。github

表(table)

表是某种特定类型数据的结构化清单。sql

数据库中的每一个表都有一个名字,用来标识本身,称之为“表名”。此名字是惟一的,在相同的数据库中不能使用重复的表名,可是在不一样的数据库中可使用。数据库

模式(schema)

模式是关于数据库和表的布局及特性的信息。函数

列(column)

列是表中的一个字段。全部的表都是由一个或多个列组成的。布局

数据类型(datatype)

数据类型是所允许的数据的类型。每一个表列都有相应的数据类型,它限制(或允许)该列中存储的数据类型。设计

行(row)

行是表中的一个记录。code

有人会把行(row)称之为数据库记录(record),这两个数据是能够互相代替的,可是从技术上说,行才是正确的术语。内存

主键(primary key)

主键是一列(或一组列),其值可以惟一区分表中每一个行。

表中的任何列只要知足如下条件,均可以做为主键:

  • 任意两行都不具备相同的主键值;
  • 每一个行都必须具备一个主键值(主键列不容许 NULL 值)

此外还有几个主键的最佳实践:

  • 不更新主键列中的值;
  • 不重用主键列的值;
  • 不在主键列中使用可能会更改的值。(例如,若是使用一个名字做为主键以标识某个供应商,当该供应商合并和更改其名字时,就得必须更改这个主键。)

外键(foreign key)

外键为某个表中的一列,它包含另外一个表的主键值,定义了两个表之间的关系。

子句(clause)

SQL 语句由子句构成,有些子句是必需的,而有的是可选的。一个子句一般由一个关键字和所提供的数据组成。例如 SELECT 语句的 FROM 子句。

操做符(operator)

用来联结或改变 WHERE 子句中的子句的关键字。也称为 逻辑操做符(logical operator)

通配符(wildcard)

用来匹配值的一部分的特殊字符。

搜索模式(search pattern)

由字面量、通配符或二者组合构成的搜索条件

拼接(concatenate)

将值联结到一块儿构成单个值

别名(alias)

是一个字段或值的替换名。别名用 AS 关键字赋予。别名有时也称为导出列(derived column),无论称为何,它们所表明的都是相同的东西。

汇集函数(aggregate function)

运行在行组上,计算和返回单个值的函数。

查询(query)

任何 SQL 语句都是查询。但此术语通常指 SELECT 语句。

相关子查询(correlated subquery)

涉及外部查询的子查询。

可伸缩性(scale)

可以适应不断增长的工做量而不失败。设计良好的数据库或应用程序称之为可伸缩性好(scale well)

变量(variable)

内存中一个特定的位置,用来临时存储数据。全部 MySQL 变量都必须以 @ 开始。

SQL(Structured Query Language)

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

SQL 的优势:

  • SQL 不是某个特定数据库供应商专有的语言。即 SQL 不是一种专利语言,并且存在一个标准委员会。几乎全部重要的 DBMS 都支持 SQL。
  • SQL 简单易学。它的语句全都是由描述性很强的英语单词组成,并且这些单词的书目很少。
  • SQL 尽管看上去很简单,但它其实是一种强有力的语言,灵活使用其语言元素,能够进行很是复杂和高级的数据库操做。


一个持续更新的github笔记,连接地址:Front-End-Basics,能够watch,也能够star。

此篇文章的地址:MySql必知必会

相关文章
相关标签/搜索