SQL基础系列(一)——基本概念

在几年前学习sql的时候,直接上手开始学习sql语句,但是忽略了sql(structured query language)的本质其实是关系型数据库的语言。在使用这些语言之前,必须对一些基本的概念有大致了解,比如:数据、数据库、数据模型、数据表等等。

不了解这些基础概念就直接学习sql,会非常浮于表面,所以sql基础,从基本概念开始。

目录

1、数据

1.1数据是什么

1.2数据类型

2、数据库

2.1数据库是什么

2.2数据库中的数据表

3、sql是什么

3.1DDL

3.2DML

3.3DCL

4、sql的基本书写规则

参考资料:


1、数据

1.1数据是什么

学习和工作的过程中充满了数据。

比如上学时墙上贴的成绩排名,这是数据;工作后每个员工的职位及对应的薪资,这是数据;每个人行程卡中的行程记录,这也是数据。

下面是数据示例:

学科 排名 班级 姓名 成绩
语文 1 高一三班 张三 139
语文 2 高一二班 李四 130

在数据库中,所有的数据都被保存在数据表中,数据表通过行来表示每一条完整的记录(语文,1,高一三班,张三,139),通过列来表示每一条记录的组成(成绩:139,130)

1.2数据类型

(1)为什么要了解数据类型

同样是数据,“张三”和“139”之间有什么不同?

我们的大脑很容易反应过来,“张三”是文本,“139”是数字。我们可以对数字进行计算,比如求平均值,求和,但是我们不能对文本进行计算。而对于计算机,则需要我们去定义,每个字段的数据类型。

对于不同数据类型,sql的书写方式不同,比如文本型的数据加‘ ’,数字型不用。在对数据进行统计计算的时候,也要注意数据是否数字格式。

对于一张数据表,了解其字段内容,也要了解字段的数据类型。

(2)数据类型包括哪些

下面的表格中列举了比较常用的数据类型:

字符型数据

数据类型 描述
VARCHAR(n)  容纳可变长度的字符串,字符/字符串最大长度 n
CHAR(n)  容纳固定长度的字符串、在括号中规定字符串的长度
TEXT 储存长文本信息,无需限定字符串长度

日期型数据

数据类型 描述
DATE 存储年、月、日的值。
TIME 存储小时、分、秒的值。
TIMESTAMP 存储年、月、日、小时、分、秒的值。

数字类型数据

数据类型 描述
INTEGER(p) 整数值(没有小数点)。小数位支持p位。
SMALLINT 整数值(没有小数点)。精度 5。
INTEGER 整数值(没有小数点)。精度 10。
DECIMAL(p,s) 精确数值,精度 p,小数点后位数 s。例如:decimal(5,2) 是一个小数点前有 3 位数,小数点后有 2 位数的数字。
NUMERIC(p,s) 精确数值,精度 p,小数点后位数 s。(与 DECIMAL 相同)

以上只是常用的数据类型,更多数据类型可参考:SQL数据类型有哪些?SQL数据类型介绍 - 树懒学堂

2、数据库

2.1数据库是什么

上学的时候,每个学科的排名数据可以保存在老师的文件夹中,随时查看。但是如果数据量大,就需要将数据以一定的结构组织保存起来,形成数据集合,这个数据集合就是数据库。

关系数据库是现在应用最广泛的数据库。它也采用由行和列组成的二维表来管理数据,所以简单易懂。同时,它还使用专门的 SQL(Structured Query Language,结构化查询语言)对数据进行操作。

用来管理数据库的计算机系统是数据库管理系统(Database Management System,DBMS),DBMS在数据库建立,运用和维护时对数据库进行统一控制,以保证数据的完整性、安全性,并在多用户同时使用时进行并发控制,在发生故障后对数据库进行恢复。

关系型数据库对应使用关系数据库管理系统(Relational Database Management System,RDBMS)。比较具有代表性的 RDBMS 有如下 5 种。

● Oracle Database:甲骨文公司的RDBMS

● SQL Server:微软公司的RDBMS

● DB2:IBM公司的RDBMS

● PostgreSQL:开源的RDBMS

● MySQL:开源的RDBMS

2.2数据库中的数据表

关系型数据库通过数据表来管理数据,数据表是由行和列组成的二维表。

  • 列:每一列都会有一定的约束条件,如上文中提到的数据类型,即对此列数据的限制;
  • 行:每一行都是一条数据记录,关系型数据库以行为单位进行数据的读写。
  • 单元格:行和列交汇的方格是单元格,单元格中数据可能为空。

SQL基础系列(一)——基本概念_第1张图片

数据库和表的关系:一个数据库中可以存储多个数据表。 如下:

SQL基础系列(一)——基本概念_第2张图片

3、sql是什么

SQL 是用来操作关系数据库的语言。可以分为以下三类:

3.1DDL

DDL(Data Definition Language,数据定义语言)用来创建或者删除存储数据用的数据库以及数据库中的表等对象。DDL 包含以下几种指令。

CREATE:创建数据库和表等对象

DROP: 删除数据库和表等对象

ALTER: 修改数据库和表等对象的结构

3.2DML

DML(Data Manipulation Language,数据操纵语言)用来查询或者变更表中的记录。DML 包含以下几种指令。

SELECT:查询表中的数据

INSERT:向表中插入新数据

UPDATE:更新表中的数据

DELETE:删除表中的数据

3.3DCL

DCL(Data Control Language,数据控制语言)用来确认或者取消对数据库中的数据进行的变更。除此之外,还可以对 RDBMS 的用户是否有权限操作数据库中的对象(数据库表等)进行设定。DCL 包含以下几种指令。

COMMIT: 确认对数据库中的数据进行的变更

ROLLBACK:取消对数据库中的数据进行的变更

GRANT: 赋予用户操作权限

REVOKE: 取消用户的操作权限

4、sql的基本书写规则

(1)SQL语句以;结尾

(2)SQL语句不区分大小写,select和SELECT的使用没有区别,语句中的列名和表名也是如此。

(3)字符串和日期数据,需要用‘ ’标识。如需插入一条数据,其中某个字段为字符串类型(‘张三’),又或者查询某个日期的数据,在语句中展示日期时(‘2020-01-01’),均需要用到英文引号。如果是数字(139),则不需要使用引号。

(4)sql语句中,单词之间需要用半角空格,或直接换行。使用全角空格会执行错误。

参考资料:

《SQL基础教程第二版》-MICK

《ORACLE开发实战经典》-李兴华、马云涛

你可能感兴趣的:(SQL,sql)