
大家好,跟吒我是语句哪吒。
即日起,跟吒开始更新MySQL数据库系列文章,语句有兴趣的跟吒朋友们可以持续关注一下。
SQL语句,语句根据其功能,跟吒主要分为四类:DDL、语句DML、跟吒DQL、语句DCL。跟吒
分类
全称
说明
DDL
Data Definition Language
数据定义语言,语句用来定义数据库对象(数据库,跟吒表, 字段)
DML
Data Manipulation Language
数据操作语言,用来对数据库表中的数据进行增删改
DQL
Data Query Language
数据查询语言,用来查询数据库中表的记录
DCL
Data Control Language
数据控制语言,用来创建数据库用户、控制数据库的访问权限
注:后续SQL示例中[ 可选内容 ]表示可选内容,即可写可不写.
Data Definition Language,数据定义语言,用来定义数据库对象(数据库,表,字段)















注意: 在删除表的时候,表中的全部数据也都会被删除。
删除字段 复制ALTER TABLE 表名 DROP 字段名;1.


在上述的建表语句中,我们在指定字段的数据类型时,用到了int ,varchar。除此之外,MySQL中还有许多的其他数据类型,它们主要分为三类:数值类型、字符串类型、日期时间类型。
数值类型类型
大小
有符号(SIGNED)范围
无符号(UNSIGNED)范围
描述
TINYINT
1byte
(-128,127)
(0,255)
小整数值
SMALLINT
2bytes
(-32768,32767)
(0,65535)
大整数值
MEDIUMINT
3bytes
(-8388608,8388607)
(0,16777215)
大整数值
INT/INTEGER
4bytes
(-2147483648,2147483647)
(0,4294967295)
大整数值
BIGINT
BIGINT
(-2^63,2^63-1)
(0,2^64-1)
极大整数值
FLOAT
4bytes
(-3.402823466 E+38, 3.402823466351 E+38)
0 和 (1.175494351 E-38,3.402823466 E+38)
单精度浮点数 值
DOUBLE
8bytes
(-1.7976931348623157 E+308, 1.7976931348623157 E+308)
0 和 (2.2250738585072014 E-308,高防服务器 1.7976931348623157 E+308)
双精 度浮 点数 值
DECIMAL
依赖于M(精度)和D(标度) 的值
依赖于M(精度)和D(标度)的 值
小数 值(精 确定 点数)
注:DECIMAL中M(精度)表示整个数值长度,D(标度)表示小数位长度。例如:123.45。M=5,D=2。
复制# 使用示例 1) 年龄字段 -- 不会出现负数, 而且人的年龄不会太大 age tinyint unsigned 2) 分数 -- 总分100分, 最多出现一位小数 score double(4,1)1.2.3.4.5.6. 字符串类型类型
大小
描述
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
极大文本数据
注:使用时通常会在类型后面加上()表示占用空间.
char 与 varchar 都可以描述字符串,char是定长字符串,指定长度多长,就占用多少个字符,和 字段值的长度无关 。而varchar是变长字符串,指定的长度为最大占用长度 。相对来说,char的性能会更高些,而varchar相对更节省存储空间。
复制# 使用示例 1). 用户名 username ------> 长度不定, 最长不会超过50 username varchar(50) 2). 性别 gender ---------> 存储值, 不是男,就是女 gender char(1) 3). 手机号 phone --------> 固定长度为11 phone char(11)1.2.3.4.5.6.7.8.9. 日期时间类型类型
大小
范围
格式
描述
DATE
3
1000-01-01 至 9999-12-31
YYYY-MM-DD
日期值
TIME
3
-838:59:59 至 838:59:59
HH:MM:SS
时间值或持续 时间
YEAR
1
1901 至 2155
YYYY
年份值
DATETIME
8
1000-01-01 00:00:00 至 9999-12-31 23:59:59
YYYY-MM-DD HH:MM:SS
混合日期和时 间值
TIMESTAMP
4
1970-01-01 00:00:01 至 2038-01-19 03:14:07
YYYY-MM-DD HH:MM:SS
混合日期和时 间值,时间戳
复制# 使用示例 1). 生日字段 birthday birthday date 2). 创建时间 createtime createtime datetime1.2.3.4.5.6.Data Manipulation Language,数据操作语言,用来对数据库中表的数据记录进行增、删、改操作

注意点:
插入数据时,指定的字段顺序需要与值的顺序是一一对应的字符串和日期型数据应该包含在引号中插入的数据大小,应该在字段的规定范围内给指定字段添加数据 复制INSERT INTO 表名 (字段名1, 字段名2, ...) VALUES (值1, 值2, ...);1.


修改语句的where条件可以有,也可以没有,如果没有条件,则会修改整张表的所有数据。
修改字段值 复制UPDATE 表名 SET 字段名1 = 值1,字段名2 = 值2,.... [ WHERE 条件 ]1.
注意点:
DELETE 语句的条件可以有,也可以没有,如果没有条件,则会删除整张表的所有数 据DELETE 语句不能删除某一个字段的值(可以使用UPDATE,将该字段值置为NULL)删除记录 复制DELETE FROM 表名 [ WHERE 条件 ] ;1.
本文转载自微信公众号「哪吒编程」,可以通过以下二维码关注。转载本文请联系哪吒编程公众号。
