MySQL-常用数据表操作SQL汇总
2022/6/17 6:21:18
本文主要是介绍MySQL-常用数据表操作SQL汇总,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
更新记录
2022年6月16日 发布。
2022年6月11日 将笔记迁移到博客中。
数据表操作
显示所有表
显示当前所在数据库的表
SHOW TABLES;
显示指定数据库的表
SHOW TABLES FROM <数据库名称>;
显示所有列
SHOW COLUMNS FROM 表名;
创建表
CREATE TABLE [IF NOT EXISTS] 表名 ( 字段1 数据类型 [约束] [默认值], 字段2 数据类型 [约束] [默认值], ... 【表级别约束条件】 )[ENGINE=<存储引擎>] [CHARSET=<字符编码>] [COLLATE <排序方式>];
从其他表复制结构(全部字段)
CREATE TABLE 新表名 LIKE 旧表名;
从其他表复制结构和数据(指定字段)
CREATE TABLE 新表名 SELECT 旧表的列... FROM 旧表名;
从其他表复制结构(指定字段)
CREATE TABLE 新表名 SELECT 旧表的列... FROM 旧表名 WHERE 1=0;
从其他表复制结构(指定字段)(指定条件的数据)
CREATE TABLE 新表名 SELECT 旧表的列... FROM 旧表名 WHERE <条件>;
创建表后增加注释
CREATE TABLE user ( -- ... ) COMMENT='用户表';
注意:MySQL 中数据列不区分大小写,但数据库和数据表区分大小写
注意:该操作会使用默认的表字符类型和表默认引擎,而不是旧表的值
查看表结构
DESCRIBE 表名;
或者
DESC 表名;
查看创建表的语句
SHOW CREATE TABLE 表名;
字段约束与修饰
主键
字段 数据类型 PRIMARY KEY;
或者
[CONSTRAINT <约束名>] PRIMARY KEY ([字段名,字段名...])
主键约束 和 唯一约束对比
保证唯一性 | 是否允许为空 | 一个表中可以有多少个 | 是否允许组合 | |
---|---|---|---|---|
主键 | 是 | 否 | 至多有1个 | 可以 |
唯一 | 是 | 是 | 可以有多个 | 可以 |
外键
[CONSTRAINT <外键约束名>] FOREIGN KEY (字段1,....) REFERENCES <主表>(字段1,....);
或者
ALTER TABLE <表名> ADD [CONSTRAINT <外键约束名>] FOREIGN KEY (字段1,....) REFERENCES <主表>(字段1,....);
非空
字段 数据类型 NOT NULL;
唯一
字段 数据类型 UNIQUE;
或者
[CONSTRAINT <约束名>] UNIQUE(字段名);
或者
ALTER TABLE <表名> ADD [CONSTRAINT <约束名>] UNIQUE(字段名);
默认值
字段 数据类型 DEFAULT 默认值;
自增
字段 数据类型 AUTO_INCREMENT; 字段 数据类型 AUTO_INCREMENT = 666;
注意:必须时键才可以使用自增,比如(主键、唯一)
非负数
字段 数据类型 UNSIGNED;
注意:只能用于整数
填充零
字段 数据类型 ZEROFILL
注意:只能用于整数
修改表
修改表名
ALTER TABLE <旧表名> RENAME [TO] <新表名>;
修改表的存储引擎
ALTER TABLE <表名> ENGINE = <改后的存储引擎>;
修改表的默认字符
ALTER TABLE <表名> CHARSET = '字符类型';
删除表的外键约束
ALTER TABLE <表名> DROP FOREIGN KEY <外键约束名>;
删除表
DROP TABLE [IF EXISTS] 表名,...;
优化表
OPTIMIZE TABLE 表名;
修改表的字段
添加字段
ALTER TABLE <表名> ADD <新字段名> <数据类型> [约束条件] [FIRST | AFTER 已存在字段名];
删除字段
ALTER TABLE <表名> DROP <字段名>;
修改字段的数据类型/约束/位置
ALTER TABLE <表名> MODIFY <字段名> <数据类型> [约束条件] [FIRST | AFTER 已存在字段名];
修改字段的排列顺序
ALTER TABLE <表名> MODIFY <字段名> <数据类型> FIRST | AFTER <字段2>;
修改字段的字段名
ALTER TABLE <表名> CHANGE <旧字段名> <新字段名> <新数据类型>;
添加约束
ALTER TABLE 表名 ADD [CONSTRAINT 约束名] 约束类型(字段名)
这篇关于MySQL-常用数据表操作SQL汇总的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-25如何部署MySQL集群资料:新手入门教程
- 2024-12-24MySQL集群部署资料:新手入门教程
- 2024-12-24MySQL集群资料详解:新手入门教程
- 2024-12-24MySQL集群部署入门教程
- 2024-12-24部署MySQL集群学习:新手入门教程
- 2024-12-24部署MySQL集群入门:一步一步搭建指南
- 2024-12-07MySQL读写分离入门:轻松掌握数据库读写分离技术
- 2024-12-07MySQL读写分离入门教程
- 2024-12-07MySQL分库分表入门详解
- 2024-12-07MySQL分库分表入门指南