MySQL表的操作

1. 创建表

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

create table users (
    id int,
    name varchar(20) comment '用户名',
    password char(32) comment '密码是32位的md5值',
    birthday date comment '生日'
) character set utf8 engine MyISAM;

说明: 不同的存储引擎,创建表的文件不一样

  • users 表存储引擎是 MyISAM ,在数据目中有三个不同的文件,分别是:
  • users 表存储引擎是innodb ,在数据目中有两个不同的文件,分别是:
  • 更改语句:alter table user engine = innodb;

2.查看表结构

bash 复制代码
desc 表名;

3. 修改表

向已有表中新增字段

bash 复制代码
ALTER TABLE tablename ADD (column datatype [DEFAULT expr][,column datatype]...);

ALTER TABLE user ADD (age INT DEFAULT 18, email VARCHAR(50));

参数说明

  • tablename:目标表名
  • column:要新增的字段名
  • datatype:字段的数据类型(如INTVARCHAR(20)
  • DEFAULT expr(可选):字段的默认值(如DEFAULT 0

修改已有字段的属性

bash 复制代码
ALTER TABLE tablename MODIFY (column datatype [DEFAULT expr][,column datatype]...);

ALTER TABLE user MODIFY (age TINYINT DEFAULT 20, email VARCHAR(100));
*(将user表的age改为TINYINT(默认 20)、email改为VARCHAR(100))

删除表中的指定字段

bash 复制代码
ALTER TABLE tablename DROP (column);

ALTER TABLE user DROP (email);

4. 删除表

bash 复制代码
DROP [TEMPORARY] TABLE [IF EXISTS] tbl_name [, tbl_name] ...

drop table t1;
相关推荐
Bode_20022 小时前
全生命周期 SQL 控制
数据库·智能制造
西西弗Sisyphus2 小时前
Qt 在无边框窗口上做一套换肤系统
开发语言·数据库·qt
神仙别闹2 小时前
基于 QT(C++)实现操作系统
数据库·c++·qt
Broccoli523026652 小时前
FastAPI + SQLAlchemy 异步会话(AsyncSession)核心方法
数据库·oracle·fastapi
harmony&2 小时前
MySQL 运维实战:从 DQL 查询到 MHA 高可用架构全解析
mysql
坐吃山猪2 小时前
【多线程】FutureTask多线程底层实现
java·开发语言·数据库
weixin199701080163 小时前
[特殊字符]《从0到1:闲鱼开放平台授权登录 + AccessToken 刷新 + 聚石塔部署完整链路》(附Python源码)
java·数据库·python
cmes_love3 小时前
国内期货Level2五档行情与逐笔成交数据介绍
数据库·区块链
cmes_love3 小时前
CME和CBOT外盘期货数据下载资源介绍
数据库·区块链
Zenova EdgeOS3 小时前
工业边缘双写一致性:从缓存到多 DB 的工程实战
数据库·缓存·边缘计算·工业边缘