1.ALTER COLUMN

用于设置或者移除某一列的默认(缺省)值,

1.1用法

  

ALTER TABLE MyTable ALTER COLUMN foo SET DEFAULT 'bar';
ALTER TABLE MyTable ALTER COLUMN foo DROP DEFAULT;

1.2 举例

mysql> desc pre_common_block;
+----------------+-----------------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+----------------+-----------------------+------+-----+---------+----------------+
| bid | mediumint(8) unsigned | NO | PRI | NULL | auto_increment |
| blockclass | varchar(255) | NO | | 0 | |
| blocktype | tinyint(1) | NO | | 0 | |
| name | varchar(255) | NO | | | |
| title | text | NO | | NULL | |
| classname | varchar(255) | NO | | | |
| summary | text | NO | | NULL | |
| uid | mediumint(8) unsigned | NO | | 0 | |
| username | varchar(255) | NO | | | |
| styleid | smallint(6) unsigned | NO | | 0 | |
| blockstyle | text | NO | | NULL | |
| picwidth | smallint(6) unsigned | NO | | 0 | |
| picheight | smallint(6) unsigned | NO | | 0 | |
| target | varchar(255) | NO | | | |
| dateformat | varchar(255) | NO | | | |
| dateuformat | tinyint(1) | NO | | 0 | |
| script | varchar(255) | NO | | | |
| param | text | NO | | NULL | |
| shownum | smallint(6) unsigned | NO | | 0 | |
| cachetime | int(10) | NO | | 0 | |
| cachetimerange | char(5) | NO | | | |
| punctualupdate | tinyint(1) | NO | | 0 | |
| hidedisplay | tinyint(1) | NO | | 0 | |
| dateline | int(10) unsigned | NO | | 0 | |
| notinherited | tinyint(1) | NO | | 0 | |
| isblank | tinyint(1) | NO | | 0 | |
+----------------+-----------------------+------+-----+---------+----------------+
26 rows in set (0.14 sec) mysql> ALTER TABLE pre_common_block ALTER COLUMN blocktype set DEFAULT 5;
Query OK, 0 rows affected (0.32 sec)
Records: 0 Duplicates: 0 Warnings: 0 mysql> desc pre_common_block;
+----------------+-----------------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+----------------+-----------------------+------+-----+---------+----------------+
| bid | mediumint(8) unsigned | NO | PRI | NULL | auto_increment |
| blockclass | varchar(255) | NO | | 0 | |
| blocktype | tinyint(1) | NO | | 5 | |
| name | varchar(255) | NO | | | |
| title | text | NO | | NULL | |
| classname | varchar(255) | NO | | | |
| summary | text | NO | | NULL | |
| uid | mediumint(8) unsigned | NO | | 0 | |
| username | varchar(255) | NO | | | |
| styleid | smallint(6) unsigned | NO | | 0 | |
| blockstyle | text | NO | | NULL | |
| picwidth | smallint(6) unsigned | NO | | 0 | |
| picheight | smallint(6) unsigned | NO | | 0 | |
| target | varchar(255) | NO | | | |
| dateformat | varchar(255) | NO | | | |
| dateuformat | tinyint(1) | NO | | 0 | |
| script | varchar(255) | NO | | | |
| param | text | NO | | NULL | |
| shownum | smallint(6) unsigned | NO | | 0 | |
| cachetime | int(10) | NO | | 0 | |
| cachetimerange | char(5) | NO | | | |
| punctualupdate | tinyint(1) | NO | | 0 | |
| hidedisplay | tinyint(1) | NO | | 0 | |
| dateline | int(10) unsigned | NO | | 0 | |
| notinherited | tinyint(1) | NO | | 0 | |
| isblank | tinyint(1) | NO | | 0 | |
+----------------+-----------------------+------+-----+---------+----------------+
26 rows in set (0.02 sec)

 

2.ALTER COLUMN

用于某一数据列的重命名、修改数据类型或者删除。

2.1用法

ALTER TABLE MyTable CHANGE COLUMN foo bar VARCHAR(32) NOT NULL FIRST;
ALTER TABLE MyTable CHANGE COLUMN foo bar VARCHAR(32) NOT NULL AFTER baz;

  

2.2 举例

mysql> desc pre_common_block;
+----------------+-----------------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+----------------+-----------------------+------+-----+---------+----------------+
| bid | mediumint(8) unsigned | NO | PRI | NULL | auto_increment |
| blockclass | varchar(255) | NO | | 0 | |
| blocktype | tinyint(1) | NO | | 5 | |
| name | varchar(255) | NO | | | |
| title | text | NO | | NULL | |
| classname | varchar(255) | NO | | | |
| summary | text | NO | | NULL | |
| uid | mediumint(8) unsigned | NO | | 0 | |
| username | varchar(255) | NO | | | |
| styleid | smallint(6) unsigned | NO | | 0 | |
| blockstyle | text | NO | | NULL | |
| picwidth | smallint(6) unsigned | NO | | 0 | |
| picheight | smallint(6) unsigned | NO | | 0 | |
| target | varchar(255) | NO | | | |
| dateformat | varchar(255) | NO | | | |
| dateuformat | tinyint(1) | NO | | 0 | |
| script | varchar(255) | NO | | | |
| param | text | NO | | NULL | |
| shownum | smallint(6) unsigned | NO | | 0 | |
| cachetime | int(10) | NO | | 0 | |
| cachetimerange | char(5) | NO | | | |
| punctualupdate | tinyint(1) | NO | | 0 | |
| hidedisplay | tinyint(1) | NO | | 0 | |
| dateline | int(10) unsigned | NO | | 0 | |
| notinherited | tinyint(1) | NO | | 0 | |
| isblank | tinyint(1) | NO | | 0 | |
+----------------+-----------------------+------+-----+---------+----------------+
26 rows in set (0.02 sec) mysql> ALTER TABLE pre_common_block CHANGE COLUMN blocktype changetype tinyint(1) NOT NULL
Query OK, 2 rows affected (0.77 sec)
Records: 2 Duplicates: 0 Warnings: 0 mysql> desc pre_common_block;
+----------------+-----------------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+----------------+-----------------------+------+-----+---------+----------------+
| changetype | tinyint(1) | NO | | NULL | |
| bid | mediumint(8) unsigned | NO | PRI | NULL | auto_increment |
| blockclass | varchar(255) | NO | | 0 | |
| name | varchar(255) | NO | | | |
| title | text | NO | | NULL | |
| classname | varchar(255) | NO | | | |
| summary | text | NO | | NULL | |
| uid | mediumint(8) unsigned | NO | | 0 | |
| username | varchar(255) | NO | | | |
| styleid | smallint(6) unsigned | NO | | 0 | |
| blockstyle | text | NO | | NULL | |
| picwidth | smallint(6) unsigned | NO | | 0 | |
| picheight | smallint(6) unsigned | NO | | 0 | |
| target | varchar(255) | NO | | | |
| dateformat | varchar(255) | NO | | | |
| dateuformat | tinyint(1) | NO | | 0 | |
| script | varchar(255) | NO | | | |
| param | text | NO | | NULL | |
| shownum | smallint(6) unsigned | NO | | 0 | |
| cachetime | int(10) | NO | | 0 | |
| cachetimerange | char(5) | NO | | | |
| punctualupdate | tinyint(1) | NO | | 0 | |
| hidedisplay | tinyint(1) | NO | | 0 | |
| dateline | int(10) unsigned | NO | | 0 | |
| notinherited | tinyint(1) | NO | | 0 | |
| isblank | tinyint(1) | NO | | 0 | |
+----------------+-----------------------+------+-----+---------+----------------+
26 rows in set (0.00 sec)

  

3.MODIFY COLUMN

除了重命名外能够做CHANGE COLUMN能做的一切工作。

3.1用法

ALTER TABLE MyTable MODIFY COLUMN foo VARCHAR(32) NOT NULL AFTER baz;

MySQL之 ALTER vs CHANGE vs MODIFY COLUMN的更多相关文章

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

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

  2. alter table fx.pet modify column `species` varchar(20) binary;

    alter table fx.pet modify column `species` varchar(20) binary;

  3. mysql ALTER COLUMN MODIFY COLUMN CHANGE COLUMN 区别及用法 (转)

    -- 设置或删除列的默认值.该操作会直接修改.frm文件而不涉及表数据.此操作很快 -- ALTER COLUMN ALTER TABLE  dsp_ad_center.XianDuan ALTER  ...

  4. mysql 的 alter table 操作性能小提示

    通常情况下,修改表的结构一般不会有太大问题,无非就是一个 alter table 操作,但是对于大表做 alter 操作是一个大问题,请小伙伴们慎重. mysql执行大部分修改表结构操作方法是创建一个 ...

  5. mysql之ALTER COLUMN、CHANGE COLUMN、MODIFY COLUMN的区别

    ALTER COLUMN:设置或删除列的默认值(操作速度非常快) 例子: alter table film alter column rental_duration set default 5; al ...

  6. MySQL:ALTER COLUMN、MODIFY COLUMN 和 CHANGE COLUMN

    ALTER COLUMN.MODIFY COLUMN 和 CHANGE COLUMN 语句修改列: ALTER COLUMN:改变.删除列的默认值(备注:列的默认值存储在 .frm 文件中). 这个语 ...

  7. MySQL中ALTER ,CHANGE , MODIFY

    ALTER TABLE project_list CHANGE COLUMN descriptionofproj proj_desc VARCHAR(100), CHANGE COLUMN contr ...

  8. mysql 中alter语句中change跟modify的区别

    mysql 中alter语句中change和modify的区别可以使用CHANGE old_col_name column_definition子句对列进行重命名.重命名时,需给定旧的和新的列名称和列 ...

  9. Modify column Vs change column

    引言 I know, we can not rename a column using modify column syntax,but can change column syntax. My qu ...

随机推荐

  1. 将android界面背景设置为黑色

    屏幕背景设置为黑色的几种方式: 新建项目时候 第二次next之后(不同sdk版本号可能不同),Background Color项点击可选. 开公布局文件,选择视图查看 就是下边二个选项卡中的第一个(G ...

  2. [Cocos2d-x]Mac下cocos2d-x连接pomeloserver

    Pomelo 是由网易开发的基于node.js 开发的高性能.分布式游戏server框架, 也可作为高实时web应用框架. Polemo的配置这里就不赘述了,Github的wiki非常全面. 在此记录 ...

  3. ASP.NET MVC应用程序展示RDLC报表

    原文:ASP.NET MVC应用程序展示RDLC报表 学习ASP.NET MVC这样久,在学习,练习与应用过程中,觉得很多知识与以前的ASP.NET多有区别,但是实现操作起来,细处又有许多相近的地方. ...

  4. Java Web整合开发(4) -- JSP

    JSP脚本中的9个内置对象: application:    javax.servlet.ServletContext config:          javax.servlet.ServletCo ...

  5. hdu1588---Gauss Fibonacci(矩阵,线性复发)

    根据题意:最后一步是寻求f(b) + f(k + b) + f(2 * k + b) + -+ f((n-1) * k + b) 清除f(b) = A^b 间A = 1 1 1 0 所以sum(n - ...

  6. HR系统邮件审批功能总结

    时至今日,来兰亭工作的第三个小任务算是暂时告一段落了.这个小任务是耗费时间最长的,因此在这里总结整理一下. 首先这个功能的出发点是方法领导进行手下员工的审批,包括加班申请,休假申请,和漏打卡申请.由于 ...

  7. Kd-Tree算法原理和开源实现代码

    本文介绍一种用于高维空间中的高速近期邻和近似近期邻查找技术--Kd-Tree(Kd树). Kd-Tree,即K-dimensional tree,是一种高维索引树形数据结构,经常使用于在大规模的高维数 ...

  8. Matlab曲面拟合和插值

    插值和拟合都是数据优化的一种方法,当实验数据不够多时常常须要用到这样的方法来绘图. 在matlab中都有特定的函数来完毕这些功能. 这两种方法的确别在于: 当測量值是准确的,没有误差时,一般用插值: ...

  9. UML九种图汇总

    UML视频读,该文件开始起草.我不知道如何下手啊!我想先UML九图和总结的关系,然后开始用它的文件. 首先在地图上. UML的九种图各自是:用例图.类图.对象图.状态图.活动图.协作图.序列图.组件图 ...

  10. CSharp设计模式读书笔记(17):迭代器模式(学习难度:★★★☆☆,使用频率:★★★★★)

    迭代器模式(Iterator Pattern):提供一种方法来访问聚合对象,而不用暴露这个对象的内部表示,其别名为游标(Cursor). 模式角色与结构: 实现代码: using System; us ...