MySQL学习 | 二、SQL分类以及DDL语句的语法
一、SQL的分类
DDL(Date Definiition Lanhuage):数据定义语言,用来定义数据库对象(数据库、表、字段等)。
create table 表名;
DML(Data Manipulation Language):数据操作语言,用来对数据库中的数据进行增删改查。
alter table 表名 add 字段名 类型(长度);
DQL(Data Query Language):数据查询语言,用来查询数据库中表里面的数据。
|
DCL(Data Control Language):数据控住语言,用来创建用户,控制用户对数据库的访问权限。
|
二、DDL在数据库上的操作
查询所有数据库:
|
查询当前数据库:
|
创建数据库:
|
删除数据库:
|
使用数据库:
|
三、DDL在表上操作
查询当前数据库中的所有表:
|
查询表结构(不会展示字段注释):
|
查询表的创建语句:
|
创建表:
|
添加字段:
|
修改字段的数据类型:
|
修改字段的名称和类型:
|
删除字段:
|
修改表名称:
|
删除表:
|
DROP:物理删除表结构加数据。
TRUNCATE:物理删除表结构加数据后 重新创建表。
四、DDL语句中的数据类型
1、数值类型
| 类型 | 大小 | 描述 |
|---|---|---|
| TINYINT | 1 bytes | 小整数值 |
| SMALLINT | 2 bytes | 大整数值 |
| MEDIUMINT | 3 bytes | 大整数值 |
| INT 或者 INTEGER | 4 bytes | 大整数值 |
| BIGINT | 8 bytes | 极大整数值 |
| FLOAT | 4 bytes | 单精度浮点整数 |
| DOUBLE | 8 bytes | 双精度浮点整数 |
| DECIMAL | 小数[精确定点数,依赖于M(精度)和D(标度)] |
2、字符串类型
| 类型 | 大小 | 描述 |
|---|---|---|
| CHAR | 0 - 255 bytes | 定长字符串 |
| VARCHAR | 0 - 65536 bytes | 变长字符串 |
| TINYBLOG | 0 - 255 bytes | 不超过255个字符的二进制数据 |
| TINYTEXT | 0 - 255 bytes | 短文本字符串 |
| BLOG | 0 - 65536 bytes | 二进制形式的长文本数据 |
| TEXT | 0 - 65536 bytes | 长文本数据 |
| MEDIUMBLOG | 0 - 16777215 bytes | 二进制形式的中等长度文本数据 |
| MEDIUMTEXT | 0 - 16777215 bytes | 中等长度文本数据 |
| LONGBLOG | 0 - 4294967295 bytes | 二进制形式的极大文本数据 |
| LONGTEXT | 0 - 4294967295 bytes | 极大文本数据 |
char(10): 即使存储一个字符,剩下的使用空格占位,效率高。
varchar(10): 存储一个字符,实际占用一个字符,效率低一点。
3、日期时间类型
| 类型 | 大小 | 范围 | 格式 | 描述 |
|---|---|---|---|---|
| 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 | 混合日期和时间值,时间戳 |
- 本文标题:MySQL学习 | 二、SQL分类以及DDL语句的语法
- 创建时间:2023-07-28 10:37:46
- 本文链接:2023/07/28/MySQL学习 | 二、SQL分类以及DDL语句的语法/
- 版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!