MySQL:ALTER COLUMN、MODIFY COLUMN 和 CHANGE COLUMN
ALTER COLUMN、MODIFY COLUMN 和 CHANGE COLUMN 语句修改列:
- ALTER COLUMN:改变、删除列的默认值(备注:列的默认值存储在 .frm 文件中)。
这个语句会直接修改 .frm 文件而不涉及表数据,所以操作很快。
-- 改变列的默认值
ALTER TABLE test ALTER COLUMN age SET DEFAULT 17; -- 删除列的默认值
ALTER TABLE test ALTER COLUMN age DROP DEFAULT;
- MODIFY COLUMN:修改列数据类型;改变列的默认值、删除列的默认值(备注:这个操作会做读、插入操作,即:拷贝了整张表到一张新表)。
-- 修改列的数据类型(备注:未执行语句之前是 name VARCHAR(10))
ALTER TABLE test MODIFY COLUMN name VARCHAR(20); -- 改变列的默认值
ALTER TABLE test MODIFY COLUMN name VARCHAR(20) NOT NULL DEFAULT 'a'; -- 删除列的默认值
ALTER TABLE test MODIRY COLUMN name VARCHAR(20);
- CHANGE COLUMN:重命名列;重命名列和修改列的数据类型(备注:单独修改列的数据类型报错)。
-- 重命名列
ALTER TABLE test CHANGE COLUMN name new_name VARCHAR(20) NOT NULL; -- 重命名列和修改列的数据类型(备注:未执行语句之前是 new_name VARCHAR(20))
ALTER TABLE test CHANGE COLUMN new_name latest_name VARCHAR(50);
还是自己写 SQL 验证更靠谱!
MySQL:ALTER COLUMN、MODIFY COLUMN 和 CHANGE COLUMN的更多相关文章
- 【待整理】MySQL alter table modify vs alter table add产生state不一样
MySQL:5.6.35 OS:redhat5.8 今天更新数据库某些表字段,有如下两SQL: ①alter table xx modify xxxx;(表大概是77w) ②alter table s ...
- MySQL ALTER TABLE: ALTER vs CHANGE vs MODIFY COLUMN
ALTER COLUMN 语法: ALTER [COLUMN] col_name {SET DEFAULT literal | DROP DEFAULT} 作用: 设置或删除列的默认值.该操作会直接修 ...
- mysql之ALTER COLUMN、CHANGE COLUMN、MODIFY COLUMN的区别
ALTER COLUMN:设置或删除列的默认值(操作速度非常快) 例子: alter table film alter column rental_duration set default 5; al ...
- Modify column Vs change column
引言 I know, we can not rename a column using modify column syntax,but can change column syntax. My qu ...
- mysql alter 语句用法,添加、修改、删除字段等
2013-05-03 17:13 39459人阅读 评论(1) 收藏 举报 分类: Mysql(9) 修改表名: ALTER TABLE admin_user RENAME TO a_use / ...
- mysql alter使用
修改表名: ALTER TABLE Table_name_A RENAME TO Table_name_B; //增加主键 alter table tabelname add new_field_i ...
- MySQL ALTER TABLE语法
先看一下定义(密密麻麻) ALTER TABLE tbl_name [alter_specification [, alter_specification] ...] [partition_optio ...
- mysql alter 语句用法,添加、修改、删除字段、索引、主键等
修改表名: ALTER TABLE admin_user RENAME TO a_use //增加主键 [sql] view plaincopy alter table tabelname add ...
- mysql ALTER COLUMN MODIFY COLUMN CHANGE COLUMN 区别及用法 (转)
-- 设置或删除列的默认值.该操作会直接修改.frm文件而不涉及表数据.此操作很快 -- ALTER COLUMN ALTER TABLE dsp_ad_center.XianDuan ALTER ...
随机推荐
- 解决PHP Redis扩展无法加载的问题
最近在工作中需要使用PHP访问Redis,从https://github.com/phpredis/phpredis下载了phpredis,并且按照官方的说明进行了安装 phpize ./config ...
- 利用Cadence PCB SI分析特性阻抗变化因素
1.概要 在进行PCB SI的设计时,理解特性阻抗是非常重要的.这次,我们对特性阻抗进行基础说明之外,还说明Allegro的阻抗计算原理以及各参数和阻抗的关系. 2.什么是特性阻抗? 2.1 传送线路 ...
- c数据结构 -- 使用链表实现计数
#include <stdio.h> #include <stdlib.h> typedef struct _node{ int value; struct _node *ne ...
- python之路之线程,进程,协程
一.线程和进程概述 1.python线程的Event 2.python线程其他和队列以及生产者消费者 3. 使用multprocessing创建进程 4.进程间数据共享方式——sharedmeory( ...
- 第三十八篇 入门机器学习——Numpy.array的基本操作——查看向量或矩阵
No.1. 初始化状态 No.2. 通过ndim来查看数组维数,向量是一维数组,矩阵是二维数组 No.3. 通过shape来查看向量中元素的个数或矩阵中的行列数 No.4. 通过size来查看数组中的 ...
- Entity Framework 简介
Entity Framework Entity Framework 的全称为 ADO.NET Entity Framework,简称 EF. 1.与 ADO.NET 的关系 Entity F ...
- layout components pages及基本操作
components组件 layouts模板 pages nuxt.config.js nuxt的配置文件
- 图的最短路径算法Dijkstra算法模板
Dijkstra算法:伪代码 //G为图,一般设为全局变量,数组d[u]为原点到达个点的额最短路径, s为起点 Dijkstra(G, d[u], s){ 初始化: for (循环n次){ u = 是 ...
- AOP使用
package com.googosoft.db.aspect; import org.aspectj.lang.ProceedingJoinPoint; import org.aspectj.lan ...
- ubuntu 切换用户
app切换root ubuntu: sudo su - app sudo su - root centos : sudo su ############ root 切换app sudo su - ap ...