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;
相关推荐
无名-CODING1 分钟前
从零开始!Vue3+SpringBoot前后端分离项目Docker部署实战(上):环境搭建与数据库容器化
数据库·spring boot·docker
Bdygsl13 分钟前
MySQL(2)—— CRUD
数据库·mysql
chushiyunen19 分钟前
python edge-tts实现tts文本转语音、音频
数据库·python·音视频
原来是猿24 分钟前
MySQL【事务中 - 事务的隔离级别】
数据库·mysql
2501_9454235436 分钟前
游戏与图形界面(GUI)
jvm·数据库·python
大傻^36 分钟前
Spring AI Alibaba Agent开发:基于ChatClient的智能体构建模式
java·数据库·人工智能·后端·spring·springaialibaba
爬山算法38 分钟前
MongoDB(50)副本集中的角色有哪些?
数据库·mongodb
大傻^1 小时前
Spring AI Alibaba 向量数据库集成:Milvus与Elasticsearch配置详解
数据库·人工智能·spring·elasticsearch·milvus·springai·springaialibaba
redsea_HR1 小时前
红海eHR解决方案背后的底层能力
大数据·数据库·人工智能
ba_pi1 小时前
每天写点什么2026-03-19-Doris三种存储模型
java·数据库·mysql