电脑基础 · 2023年3月25日

认识数据库 | SQL语句的介绍和数据类型

文章目录

  • 数据库
    • 数据库相关概念
    • MySQL数据模型
  • SQL
    • SQL基本介绍
    • SQL数据类型

数据库

数据库相关概念

数据库概念:

存储数据的仓库,数据是有组织的进行存储

英文:DataBase,简称 DB

数据库管理系统概念:

管理数据库的大型软件

英文:DataBase Management System,简称 DBMS

SQL:

英文:Structured Query Language,简称 SQL,结构化查询语言

操作关系型数据库的编程语言, 简单来说SQL是和数据库打交道的编程语言

定义操作所有关系型数据库的统一标准

常见的有如下一些数据库管理系统:

认识数据库 | SQL语句的介绍和数据类型

Oracle:收费的大型数据库,Oracle 公司的产品

MySQL: 开源免费的中小型数据库。后来 Sun公司收购了 MySQL,而 Sun 公司又被 Oracle 收购

SQL Server:MicroSoft 公司收费的中型的数据库。C#、.net 等语言常使用

PostgreSQL:开源免费中小型的数据库

DB2:IBM 公司的大型收费数据库产品

SQLite:嵌入式的微型数据库。如:作为 Android 内置数据库

MariaDB:开源免费中小型的数据库

MySQL数据模型

MySQL是关系型数据库:

关系型数据库是建立在关系模型基础上的数据库,简单说,关系型数据库是由多张能互相连接的二维表组成的数据库

优点:

  • 都是使用表结构,格式一致,易于维护。
  • 使用通用的 SQL 语言操作,使用方便,可用于复杂查询。
  • 数据存储在磁盘中,安全。

认识数据库 | SQL语句的介绍和数据类型

一个数据库对应的其实就是操作系统中的一个文件夹;

而数据库中又对应许多数据表;

数据表对应的又是许多条数据。

SQL

SQL基本介绍

SQL简介:

英文:Structured Query Language,简称 SQL

结构化查询语言,一门操作关系型数据库的编程语言

定义操作所有关系型数据库的统一标准

对于同一个需求,每一种数据库操作的方式可能会存在一些不一样的地方,我们称为“方言”

SQL通用语法:

SQL 语句可以单行或多行书写,以分号结尾。

MySQL 数据库的 SQL 语句不区分大小写,关键字建议使用大写。

注释

  • 单行注释: -- 注释内容#注释内容(MySQL 特有)
show DATABASES; -- 查询所有数据库名称
show DATABASES; # 查询所有数据库
  • 多行注释: /* 注释 */

SQL的分类:

DDL(Data Definition Language) 数据定义语言,用来定义数据库对象:数据库,表,列等

DML(Data Manipulation Language) 数据操作语言,用来对数据库中表的数据进行增删改

DQL(Data Query Language) 数据查询语言,用来查询数据库中表的记录(数据)

DCL(Data Control Language) 数据控制语言,用来定义数据库的访问权限和安全级别,及创建用户

SQL数据类型

MySQL 支持多种类型,可以分为三类

数值类型

数据类型 大小 描述
TINYINT 1 byte 小整数值
SMALLINT 2 bytes 大整数值
MEDIUMINT 3 bytes 大整数值
INT或INTEGER 4 bytes 大整数值
BIGINT 8 bytes 极大整数值
FLOAT 4 bytes 单精度浮点数值
DOUBLE 8 bytes 双精度浮点数值
DECIMAL 小数值

日期类型

数据类型 大小 描述
DATE 3 日期值
TIME 3 时间值或持续时间
YEAR 1 年份值
DATETIME 8 混合日期和时间值
TIMESTAMP 4 混合日期和时间值,时间戳

字符串类型

数据类型 大小 描述
CHAR 0-255 bytes 定长字符串
VARCHAR 0-65535 bytes 变长字符串
TINYBLOB 0-255 bytes 不超过 255 个字符的二进制字符串
TINYTEXT 0-255 bytes 短文本字符串
BLOB 0-65 535 bytes 二进制形式的长文本数据
TEXT 0-65 535 bytes 长文本数据
MEDIUMBLOB 0-16 777 215 bytes 二进制形式的中等长度文本数据
MEDIUMTEXT 0-16 777 215 bytes 中等长度文本数据
LONGBLOB 0-4 294 967 295 bytes 二进制形式的极大文本数据
LONGTEXT 0-4 294 967 295 bytes 极大文本数据