一:ALTER 添加单列

  - 语法

    - ALTER TABLE 表名 ADD 列名 定义类型 [FIRST(列将加入最上方) | AFTER 字段名(列加入某某字段之后) ]

  - 示例

    • `user` 表 新加入 `age` 字段为第一个字段
      ALTER TABLE `user` ADD `age` INT FIRST; `user` 表 新加入 `year` 字段,在 `id` 字段之后
      ALTER TABLE `user` ADD `year` INT AFTER `id`;

二:ALTER 删除单列

  - 语法

    - ALTER TABLE 表名 DROP 列名

  - 言简意赅。

三:ALTER 添加约束

  - 语法

    - ALTER TABLE 表名 ADD 约束条件 (约束字段);

  - 示例

    • 设置一个主键(之前表未有主键)
      ALTER TABLE `user` ADD PRIMARY KEY (`id`); 新增一个唯一约束
      ALTER TABLE `user` ADD UNIQUE KEY (`name`);

四:ALTER 删除主键

  - 语法

    - ALTER TABLE 表名 DROP 约束条件;

  - 示例:

    - 删除一个主键(因为一张表中只有一个主键,所以不需要指定具体字段)

    • ALTER TABLE `user` DROP PRIMARY KEY;

五:ALTER 删除唯一约束  

  - 唯一约束其实就是在该列上面写了一个唯一的索引,而不是具体的字段。

  - 所以,应该是找到该字段唯一索引

    - SHOW INDEX FROM `表名`;

  - 删除

    • ALTER TABLE `user` DROP INDEX `索引名`;  

六:ALTER 修改字段类型

  - 语法ALTER TABLE 表名 MODIFY  字段 条件;

  - 注意:

    - 在确认字段后最好不要进行字段类型的修改。

    - 可能造成数据的丢失和因为修改类型导致的服务异常

  - 示例 

    • 修改一列的数据类型
      ALTER TABLE `user` MODIFY `token` VARCHAR();

七:ALTER 修改字段名称

  - 语法

    - ALTER TABLE 表名 CHANGE  老字段名 新字段名 类型[约束];

    - 示例

    • 更改一列的名称和类型
      ALTER TABLE `user` CHANCE `name` `name2` VARCHAR();

          

《Mysql ALTER基本操作》的更多相关文章

  1. 简单物联网:外网访问内网路由器下树莓派Flask服务器

    最近做一个小东西,大概过程就是想在教室,宿舍控制实验室的一些设备. 已经在树莓上搭了一个轻量的flask服务器,在实验室的路由器下,任何设备都是可以访问的:但是有一些限制条件,比如我想在宿舍控制我种花 ...

  2. 利用ssh反向代理以及autossh实现从外网连接内网服务器

    前言 最近遇到这样一个问题,我在实验室架设了一台服务器,给师弟或者小伙伴练习Linux用,然后平时在实验室这边直接连接是没有问题的,都是内网嘛.但是回到宿舍问题出来了,使用校园网的童鞋还是能连接上,使 ...

  3. 外网访问内网Docker容器

    外网访问内网Docker容器 本地安装了Docker容器,只能在局域网内访问,怎样从外网也能访问本地Docker容器? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Docker容器 ...

  4. 外网访问内网SpringBoot

    外网访问内网SpringBoot 本地安装了SpringBoot,只能在局域网内访问,怎样从外网也能访问本地SpringBoot? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装Java 1 ...

  5. 外网访问内网Elasticsearch WEB

    外网访问内网Elasticsearch WEB 本地安装了Elasticsearch,只能在局域网内访问其WEB,怎样从外网也能访问本地Elasticsearch? 本文将介绍具体的实现步骤. 1. ...

  6. 怎样从外网访问内网Rails

    外网访问内网Rails 本地安装了Rails,只能在局域网内访问,怎样从外网也能访问本地Rails? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Rails 默认安装的Rails端口 ...

  7. 怎样从外网访问内网Memcached数据库

    外网访问内网Memcached数据库 本地安装了Memcached数据库,只能在局域网内访问,怎样从外网也能访问本地Memcached数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装 ...

  8. 怎样从外网访问内网CouchDB数据库

    外网访问内网CouchDB数据库 本地安装了CouchDB数据库,只能在局域网内访问,怎样从外网也能访问本地CouchDB数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Cou ...

  9. 怎样从外网访问内网DB2数据库

    外网访问内网DB2数据库 本地安装了DB2数据库,只能在局域网内访问,怎样从外网也能访问本地DB2数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动DB2数据库 默认安装的DB2 ...

  10. 怎样从外网访问内网OpenLDAP数据库

    外网访问内网OpenLDAP数据库 本地安装了OpenLDAP数据库,只能在局域网内访问,怎样从外网也能访问本地OpenLDAP数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动 ...

随机推荐

  1. rsync安装及部署

    一.服务器端1.yum -y install rsync xinetd 2.vi /etc/xinetd.d/rsync 将yes 修改为no IPV6修改为IPV4 3.vi /etc/rsyncd ...

  2. VueThink配置

    vuethink 配置 原文地址:http://blog.csdn.net/hero82748274/article/details/76100938

  3. (笔记)Linux内核学习(二)之进程

    一 进程与线程 进程就是处于执行期的程序,包含了独立地址空间,多个执行线程等资源. 线程是进程中活动的对象,每个线程都拥有独立的程序计数器.进程栈和一组进程寄存器. 内核调度的对象是线程而不是进程.对 ...

  4. Android wpa_supplicant 四次握手 流程分析

    记录wpa_supplicant四次握手的过程. 相关log:https://www.cnblogs.com/helloworldtoyou/p/9633603.html 接收到第一次握手,会设置一个 ...

  5. Solr中的q与fq参数的区别

    转自:搜索系统5:Solr中的q与fq参数的区别在那儿 1.对结果排序有影响 今天遇到一个问题,把相同的参数比如name:张三,放到q与fq,两者返回的结果完全不一样. 经过debug发现,原因是这两 ...

  6. MySQL数据库远程访问权限如何打开(两种方法)

    在我们使用mysql数据库时,有时我们的程序与数据库不在同一机器上,这时我们需要远程访问数据库.缺省状态下,mysql的用户没有远程访问的权限. 下面介绍两种方法,解决这一问题. 1.改表法 可能是你 ...

  7. Hdg Remote Debug

    https://www.assetstore.unity3d.com/en/#!/content/61863 https://forum.unity.com/threads/hdg-remote-de ...

  8. 【QT】QT下载与安装

    很简单 1.下载地址 http://download.qt.io/archive/qt/ 学个单词,archive. 选择一个版本下载,5.9.3. 2.安装 选择组件 MinGW就行了,MinGW- ...

  9. 转载->C#异常处理

    C# 异常处理 异常是在程序执行期间出现的问题.C# 中的异常是对程序运行时出现的特殊情况的一种响应,比如尝试除以零. 异常提供了一种把程序控制权从某个部分转移到另一个部分的方式.C# 异常处理时建立 ...

  10. E - Cup

    The WHU ACM Team has a big cup, with which every member drinks water. Now, we know the volume of the ...