这篇文章主要介绍了mysql alter table修改表命令整理的相关资料,需要的朋友可以参考下
 

MYSQL ALTER TABLE命令用于修改表结构,例如添加/修改/删除字段、索引、主键等等,本文章通过实例向大家介绍MYSQL ALTER TABLE语句的使用方法,

MySQL ALTER语法如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
ALTER [IGNORE] TABLE tbl_name alter_spec [, alter_spec ...]
alter_specification:
ADD [COLUMN] create_definition [FIRST | AFTER column_name ]
or ADD INDEX [index_name] (index_col_name,...)
or ADD PRIMARY KEY (index_col_name,...)
or ADD UNIQUE [index_name] (index_col_name,...)
or ALTER [COLUMN] col_name {SET DEFAULT literal | DROP DEFAULT}
or CHANGE [COLUMN] old_col_name create_definition
or MODIFY [COLUMN] create_definition
or DROP [COLUMN] col_name
or DROP PRIMARY KEY
or DROP INDEX index_name
or RENAME [AS] new_tbl_name
or table_options

下面来看几个实例:

1、向表employee中添加Account_Number字段并设置其字段类型为INT

ALTER TABLE employee ADD COLUMN Account_Number INT

2、修改表employee中的ID字段为索引

ALTER TABLE employee ADD INDEX (ID)

3、修改表employee中的ID字段为主键PRIMARY KEY

ALTER TABLE employee ADD PRIMARY KEY (ID)

4、修改表employee中的ID字段为唯一索引UNIQUE

ALTER TABLE employee ADD UNIQUE (ID)

5、将employee表中的id字段重命名为salary并设置其数据类型为int

ALTER TABLE employee CHANGE ID salary INT

6、删除employee表中的Customer_ID字段

ALTER TABLE employee DROP Customer_ID

7、删除employee表中所有主键

ALTER TABLE employee DROP PRIMARY KEY

8、删除employee表中字段Customer_ID的索引,只是将Customer_ID的索引取消,不会删除Customer_ID字段。

ALTER TABLE employee DROP INDEX Customer_ID

9、修改employee表中First_Name的字段类型为varchar(100)

ALTER TABLE employee MODIFY First_Name varchar(100)

10、将表employee重命名为Customer

ALTER TABLE employee RENAME Customer

11、多命令写在一起:

mysql> ALTER TABLE Books
  -> ADD PRIMARY KEY (BookID),
  -> ADD CONSTRAINT fk_1 FOREIGN KEY (PubID) REFERENCES Publishers (PubID),
  -> ADD COLUMN Format ENUM('paperback', 'hardcover') NOT NULL AFTER BookName;

mysql alter table修改表命令整理的更多相关文章

  1. mysql alter 增加修改表结构及约束

    1) 加索引,添加时若未指定索引名,默认为字段名   mysql> alter table 表名 add index 索引名 (字段名1[,字段名2 …]); 例子: mysql> alt ...

  2. ALTER TABLE - 修改表的定义

    SYNOPSIS ALTER TABLE [ ONLY ] name [ * ] ADD [ COLUMN ] column type [ column_constraint [ ... ] ] AL ...

  3. alter table 修改表结构规范

    use database_name; ) )), ADD INDEX index_time ( `timeId` ); # 添加主键: alter table table_name add prima ...

  4. MySQL操作与修改表

    插入数据(insert) insert语句的3个主要组成部分: 所要插入数据的表的名称: 表终需要使用的列的名称: 需要插入到列的值. 数字型主键生成机制 数字型主键生成机制,除了随机选择数字外,还可 ...

  5. MySQL ALTER TABLE: ALTER vs CHANGE vs MODIFY COLUMN

    ALTER COLUMN 语法: ALTER [COLUMN] col_name {SET DEFAULT literal | DROP DEFAULT} 作用: 设置或删除列的默认值.该操作会直接修 ...

  6. mysql中如何修改表的名字?修改表名?

    需求描述: 今天在进行mysql表的历史数据迁移,需要将某张表进行备份,修改表的名字,在此记录下操作过程. 操作过程: mysql> create table ts01 like ti_o_sm ...

  7. mysql ALTER TABLE语句 语法

    mysql ALTER TABLE语句 语法 作用:用于在已有的表中添加.修改或删除列.无铁芯直线电机 语法:添加列:ALTER TABLE table_name ADD column_name da ...

  8. 曲演杂坛--使用ALTER TABLE修改字段类型的吐血教训

    --===================================================================== 事件起因:开发发现有表插入数据失败,查看后发现INT类型 ...

  9. mysql基本的修改表的命令

    修改表相关的命令 1.添加列表 alter table 表名 add 列名 类型; 2.删除某一列 alter table userinfo drop column 列名; 3.修改列的类型 alte ...

  10. alter table锁表,MySQL出现Waiting for table metadata lock的场景浅析及解决方案

    在修改/增加表字段的时候,发现很慢, show processlist; 时, Waiting for table metadata lock 能一直锁很久. 官网的一段话,可以理解下 http:// ...

随机推荐

  1. 从30个角度对比 PostgreSQL 和 MySQL

    比较版本:PostgreSQL 11    VS      MySQL5.7(innodb引擎) Oracle官方社区版 版权情况:PostgreSQL 11(免费开源).MySQL5.7 Oracl ...

  2. vue 拖拉改变盒子高度(mousedown、mousemove、mouseup)流畅不卡顿

    需求:上下两个盒子之间添加可拖拽按钮,实现高度变化 html: <textarea :id="'mycode'+(index*1+1)" :ref="'mycode ...

  3. 2023/4/14 SCRUM个人博客

    1.我昨天的任务 初步了解项目的整体框架,并对接下来的人脸识别库以及组件有基本了解和安装 2.遇到了什么困难 ------------ 3.我今天的任务 获得了人脸识别作弊检测和绘制界面的分工,准备先 ...

  4. 简单写写IO流里的一些高级流

    缓冲流Buffered:缓冲流是一种高级的流,他可以对file类的流进行包装,内部含有一种缓冲池,可以在一定程度上提高IO的读写效率 不过,按实验来看,只要给低级流和缓冲流相似的byte读写,其实两者 ...

  5. 【Spring Data JPA】09 多表关系 Part2 多对多关系操作

    环境搭建: 用户类: package cn.echo42.domain; import javax.persistence.*; import java.util.HashSet; import ja ...

  6. 如何在anaconda环境中安装cuda.h和cuda_runtime.h

    在前面的文章(几年前的文章)中我们介绍了在anaconda中安装cuda.cudnn后,有介绍了如何在anaconda中安装nvcc.nccl等NVIDIA的各种编译器和库,本文介绍如何在anacon ...

  7. HP笔记本电脑——暗夜精灵2pro继电池鼓包后出现无法充电的问题,最后电量显示:0%可用(电源已接通,未充电)

    问题如题,最近使用暗夜精灵2pro笔记本(自己17年5月1节日购买)使用了四年,使用了第二年的时候出现电池鼓包问题于是自己花了不到200元在某宝上购入电池进行替换同时更新bios,正常使用到今年8月2 ...

  8. 首次配置成功rllab运行环境,给出anaconda下的配置

    name: rllab channels: - defaults dependencies: - _libgcc_mutex=0.1=main - _openmp_mutex=5.1=1_gnu - ...

  9. baselines中环境包装器EpisodicLifeEnv的分析

    如题: class EpisodicLifeEnv(gym.Wrapper): def __init__(self, env): """Make end-of-life ...

  10. Gradle工程编译报错:Cause: org.jetbrains.plugins.gradle.tooling.util.ModuleComponentIdentifierImpl.getModuleIdentifier()Lorg/gradle/api/artifacts/ModuleIdentifier;

    1.背景 从git上拉取代码后,编译报错如下: Cause: org.jetbrains.plugins.gradle.tooling.util.ModuleComponentIdentifierIm ...