MySQL操作表

文章目录

1.增加表

创建表语法:

复制代码
CREATE TABLE table_name (
field1 datatype,
field2 datatype,
field3 datatype
) character set 字符集 collate 校验规则 engine 存储引擎;

说明:

  • field 表示列名
  • datatype 表示列的类型
  • character set 字符集,如果没有指定字符集,则以所在数据库的字符集为准
  • collate 校验规则,如果没有指定校验规则,则以所在数据库的校验规则为准
  • 不同的存储引擎,创建表的文件不一样

表存储引擎为 MyISAM 时,在数据目中有三个不同的文件,分别是:

  • users.frm:表结构
  • users.MYD:表数据
  • users.MYI:表索引

2.查看表

desc 表名;

  • Field 字段名称
  • Type 字段类型
  • Null 是否允许为空
  • Key 索引类型
  • Default 默认值
  • Extra 扩充

查看表创建信息:

将 ; 换为 \G 即可格式化:

3.修改表

在项目实际开发中,经常修改某个表的结构,比如字段名字,字段大小,字段类型,表的字符集类型,表的存储引擎等等。我们还有需求,添加字段,删除字段等等。这时我们就需要修改表。

修改表名:

alter table 'd1' rename to 'newd1'

(to 可以省略)

插入数据:

在表中加入一个或多个记录:

insert into 'd1' values ('根据字段格式填写'),('可以加多个'),();

新增一列:

向表中添加一个字段

alter table 'd1' add '新字段名称' '新字段类型' comment '描述' after birthday;

插入新字段后,对原来表中的数据没有影响,

原先已有数据是没有新增字段的信息的,会显示为NULL

修改一列类型:

将 varchar(20) 修改为 varchar(60)

数据没有变,但是comment没了。

alter table 'd1' modify '要改类型的字段的名称' '新类型';

修改列名:

修改列名必须带上属性 ,即新字段需要完整定义
alter table '原列名' change name `新列名` `新类型`;

删掉一列:

注意:删除字段一定要小心,删除字段及其对应的列数据都没了

alter table 'd1' drop '要删的列名称';

4.删除表

drop table 'd1';

相关推荐
Frankie_stand35 分钟前
测试自动化实战指南:从脚本化、自动判据到 CI 集成的完整落地路径
android·ci/cd·自动化
恋猫de小郭2 小时前
Flutter 大小核优化又被回滚,然后又开新提案?
android·前端·flutter
Kapaseker2 小时前
领导问我 Kotlin 的 Nothing 是什么?
android·kotlin
杨凯凡2 小时前
MySQL 死锁怎么排查?InnoDB 锁等待与 Spring Boot 整事务重试实战
数据库·spring boot·mysql
Decay__2 小时前
01_SQLServer 体系架构全解 —— 实例进程、关系引擎、SQLOS 与事务日志深入
运维·数据库·sql·mysql·架构
韩曙亮2 小时前
【错误记录】安卓 adb 调试 5037 端口占用排查 ( adb 的三层结构 | 找出本机占用 5037 的进程 )
android·数据库·adb·安卓·错误记录
瑞雪兆丰年兮3 小时前
JavaWeb-day07-MySQL(DQL&多表设计)
java·开发语言·数据库·sql·mysql·javaweb·web
三少爷的鞋3 小时前
不改变异步本质,只改变代码组织:Telegram 项目的 Kotlin 协程实践
android
FungLeo10 小时前
成为全栈·基础补充·数据库迁移与事务:数据结构怎样安全演进
mysql·postgresql·sqlite·数据一致性·数据库事务·数据库迁移·成为全栈
好的佩奇12 小时前
蓝牙之广播与扫描
android·flutter·蓝牙