首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >【MySQL】表的操作

【MySQL】表的操作

原创
作者头像
lirendada
发布2026-05-04 11:22:13
发布2026-05-04 11:22:13
910
举报
文章被收录于专栏:MySQLMySQL

查看所有表

代码语言:javascript
复制
show tables;

查看表结构

代码语言:javascript
复制
desc 表名

获取表的创建语句

代码语言:javascript
复制
show create table 表名 \G;

创建表

代码语言:javascript
复制
CREATE [TEMPORARY] TABLE [IF NOT EXISTS] 表名 (
    field datatype [约束] [comment '注解内容'] 
    [, field datatype [约束] [comment '注解内容']] ... 
) [engine 存储引擎] [character set 字符集] [collate 排序规则];
  • TEMPORARY:表示创建的是一个临时表
  • field:列名
  • datatype:数据类型
  • comment:对列的描述或说明
  • engine:存储引擎,不指定则使用默认存储引擎
  • characterset:字符集,不指定则使用默认字符集
  • collate:排序规则,不指定则使用默认排序规则

下面我们创建两个不同存储引擎的表,来看看区别:

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

  1. user1 表存储引擎是 MyISAM,在数据目录中有三个不同的文件,分别是:
    1. users1.frm:表结构
    2. users1.MYD:表数据,MY 表示 MyISAMD 表示 Data
    3. users1.MYI:表索引,MY 表示 MyISAMI 表示 Index
  2. user2 表存储引擎是 Innodb,在数据目录中有两个不同的文件,分别是:
    1. users1.frm:表结构
    2. user2.ibd:表的数据和索引

复制表结构

注意表1只是复制了表2的结构,表1本身是没数据的!

代码语言:javascript
复制
create table 表名1 like 表名2;

删除表

代码语言:javascript
复制
drop [temporary] table [if exists] 表名 [, 表名, ...] 

修改表

代码语言:javascript
复制
ALTER TABLE 表名 [alter_option [, alter_option] ...]; 

alter_option: { 
      table_options 
    | ADD  col_name column_definition [FIRST | AFTER col_name] --first表示插入到表中第一行
    | MODIFY  col_name column_definition [FIRST | AFTER col_name] --after表示插入到某一行后面
    | DROP  col_name 
    | RENAME COLUMN old_col_name TO new_col_name 
    | RENAME to new_tbl_name
}
  • ADD:向表中添加列
  • MODIFY:修改表中现有的列
  • DROP:删除表中现有的列
  • RENAME COLUMN:重命名表中现有的列
  • RENAME [TO|AS] new_tbl_name:重命名当前的表

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 查看所有表
  • 查看表结构
  • 获取表的创建语句
  • 创建表
  • 复制表结构
  • 删除表
    • 修改表
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档