SQL语言与数据类型


SQL语言

SQL全称为Structured Query Language,即结构化查询语言,是一种用来操作数据库系统的编程语言,也是与数据库通信的指令,可以在数据库中对数据进行查询、插入、更新、删除等操作。它广泛应用于各种关系型数据库管理系统,如MySQL、SQL Server和Oracle等。

SQL语句的类型

SQL语句从功能上讲,分为数据操作语言DML、数据查询语言DQL、数据定义语言DDL和数据控制语言DCL四大类:

  • DML:数据操作语言,修改数据的SQL语句集。DML语句主要包括INSERT、UPDATE和DELETE等数据的插入、修改与删除语句。
  • DQL:数据查询语言,核心功能是从数据库中检索数据。DQL的代表语句为SELECT语句。
  • DDL:数据定义语言,数据库对象(例如库、表、视图等)定义及生命周期管理的SQL语句集。DDL包括CREATE、ALTER和DROP等语句。
  • DCL:数据控制语言,用于管理用户和对象安全权限的SQL语句集。DCL包括GRANT、REVOKE和DENY等语句。

SQL常用数据类型

虽然不同的关系型数据库支持的数据类型不一样,但数字、字符、日期等基本数据类型几乎所有的关系型数据库都支持,但在具体实现上可能略有差异。

1、整数类型。

类型 描述
int 4字节长度整数,用于表示−2,147,483,648~2,147,483,647之间的整数。
tinyint 1字节长度整数,用于表示−128~127之间的小整数。
smallint 2字节长度整数,用于表示−32,768~32,767之间的小整数。
bigint 8字节长整数,用于表示比较大的整数。

2、浮点数类型,浮点数通常需要指定最大数字位数及小数点后保留的数字位数,例如:double(6,2)表示总共6位数字,小数点后保留两位。

类型 描述
double 8字节长度的双精度浮点数,可使用double(size, d)指明数字长度。
float 4字节长度的单精度浮点数,可使用float(size, d)指明数字长度。
decimal(size, d) 精确表示的浮点数,而double和float表示的是精确到小数点后若干位的近似值。

3、字符类型,字符类型的数据表示时需使用单引号引用,例如:'hello,world'。

类型 描述
varchar(size) 可变长度字符串,根据实际长度占用空间,最大长度由size指定。
char(size) 固定长度的字符串,长度由size指定,不足长度时使用空格填充。
text 字符串文本,MySQL默认最大长度为65,535个字符。

4、日期时间类型,日期时间类型的数据表示时需使用单引号引用,例如:'2000-01-01','15:28:30'。

类型 描述
date 格式为YYYY−MM−DD的日期类型。
time 格式为HH:MM:SS的时间类型。
datetime 格式为YYYY−MM−DD HH:MM:SS的日期时间类型。
timestamp 时间戳,从1970−01−01 00:00:00到现在经过的秒数。

SQL字段约束

在SQL中,字段约束是用来定义和限制表中数据的有效性和完整性的规则。这些约束可以确保数据的准确性、一致性和可靠性。下表是几种常见的字段约束。

约束 描述
primary key 主键约束:字段中的值可以唯一标识表中的每一行记录,且不能为空。
unique 唯一约束:字段中的所有值都是唯一的,允许有空值。
foreign key 外键约束:字段中的值匹配另一个表中的字段值。
not null 非空约束:字段不接受空值(null)。
default 默认值约束:未指定字段值时,使用默认值。

发表评论

评论数量:0