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';

相关推荐
ttwuai20 分钟前
Go 后台初始化 MySQL 脚本失败怎么办?先查 DDL 还是生成配置
开发语言·mysql·golang
hai_android1 小时前
Messenger:Android 最轻量的 IPC 方式
android·kotlin
gxgldyh1 小时前
Android Framework源码解析(十):Service启动全流程——从startService到Service执行的源码深度解析
android
换元不配限2 小时前
Android Studio Dolphin 新版Logcat 使用指南:告别混乱日志,高效定位问题
android·android studio·logcat
Android-Flutter3 小时前
android Binder 应用层开发 详解
android·binder
Y38153266210 小时前
MySQL 慢查询排查实战:EXPLAIN 看懂 type 与 Extra,一个字段定位性能问题
数据库·mysql
数据库小学妹13 小时前
为什么MySQL索引用B+树?从存储底层讲透原理
数据库·mysql·b+树·索引优化·磁盘io·数据库原理
ly768916 小时前
MySQL 自增主键耗尽:从原理到应急恢复
数据库·mysql·innodb·故障恢复·自增主键·主键设计
文人sec16 小时前
MySQL主库出问题了,从库怎么办?备库为什么会延迟好几个小时?
android·数据库·mysql
hai_android17 小时前
不用 AIDL,手把手教你手写 Binder 代理类
android·kotlin