• 人民网驻阿尔及利亚记者报道集 2018-02-19
  • 党务问答:党组与党委有何区别? 2018-02-19
  • MINI车联网服务3月起升级至4G网络 增加新功能 2018-02-18
  • 以色列警方:已有足够的证据可以用于起诉以总理 2018-02-18
  • 冬奥会短节目第四 金博洋:伤病令我更强大 2018-02-18
  • 天津市北辰区委书记冯卫华:强化政治担当 把主体责任落实落细 2018-02-17
  • 正月初一客流继续回落 全国铁路预计发送旅客389万人次 2018-02-17
  • 送别余光中:诗人虽远行,乡愁永流传 2018-02-17
  • 集团原董事长违纪被查 人员伤亡事故频发 湖北宜化:去年亏损额超过公司市值 2018-02-17
  • 图片故事:“六个人”的火车站 2018-02-16
  • 【马来西亚房产】雅诗阁之星十年包租可续租! ——凤凰网房产马来西亚 2018-02-16
  • 大量顺差在中国,多数利润归美国 2018-02-16
  • 河北今年将削减煤炭消费500万吨 2018-02-16
  • 开创生态文明新时代 绘出美丽中国新图景 2018-02-15
  • 以色列警方:已有足够的证据可以用于起诉以总理 2018-02-15
  • MySQL Alter Table 修改表信息

    栏目: mysql 发布于: 2013-08-27 15:41:30

    Alter Table 修改表信息

    ALTER TABLE 允许修改表信息:可以增加或删减字段,更改字段的数据类型和属性以及名称,创建或取消索引,甚至还可以更改表的评注和表的类型。

    增加字段

    语法:

    ALTER TABLE tb_name new_column data_type
    

    例子:

    ALTER TABLE user ADD status TINYINT(1) UNSIGNED NULL
    

    增加字段时需要注明字段的属性,可参考《MySQL 数据类型》。默认新添加的字段位于表末尾,如果需要指定增加在某字段后面,可以加上AFTER关键字:

    ALTER TABLE tb_name new_column data_type AFTER column
    

    删除字段

    语法:

    ALTER TABLE tb_name DROP column
    

    在该字段删除后,和这个字段相关的索引和表约束也会被自动删除。

    例子:

    ALTER TABLE user DROP status
    

    改变字段名称及属性

    语法:

    ALTER TABLE tb_name CHANGE column new_column data_type
    

    new_column为新的字段名称,如果新的名称和旧的名称一样,那么则不改变字段的名称而只改变字段的属性。

    例子:

    ALTER TABLE user CHANGE status status_bak INT(8) UNSIGNED NULL DEFAULT \'1\'
    

    提示

    即使 new_column 和 column 一样也不可省略。

    增加索引(或表约束等其他)属性

    语法:

    ALTER TABLE tb_name ADD INDEX_TYPE (column)
    

    该语法等同于:

    CREATE INDEX_TYPE index_name ON tb_name (column)
    

    例子:

    //给 status 字段加上索引
    ALTER TABLE user ADD INDEX (status) 
    

    修改索引名及索引属性

    语法:

    ALTER TABLE tb_name DROP INDEX_TYPE index_name, ADD INDEX_TYPE new_index_name (column)
    

    该语法的实质是将原来的索引删除,再重新建立索引。

    RENAME TABLE 重命名表

    RENAME TABLE 语法可以将一个或多个表重新命名。

    语法:

    RENAME TABLE tb_name TO new_tb_name, tb_name2 TO new_tb_name2, …
    

    提示

    重命名操作自动进行,这意味着当重命名正在运行时,其它线程不能读取任何表。

    如果想交换两个表的名字,可以做如下操作(假定不存在名为 tmp_table 的表):

    RENAME TABLE old_table TO tmp_table,
                 new_table TO old_table,
                 tmp_table TO new_table
    本站文章除注明转载外,均为本站原创或编译?;队魏涡问降淖?,但请务必注明出处。
    转载请注明:文章转载自 七星彩票平台
    本文标题:MySQL Alter Table 修改表信息
    IT技术书籍推荐:
    疯狂Java讲义(第3版)
    疯狂Java讲义(第3版)
    李刚 (作者)
    《疯狂Java讲义(第3版)》内容简介:《疯狂Java讲义(第3版)》是《疯狂Java讲义》的第3版,第3版保持了前两版系统、全面、讲解浅显、细致的特性,全面新增介绍了Java 8的新特性,《疯狂Java讲义(第3版)》大部分示例程序都采用Lambda表达式、流式API进行了改写,因此务必使用Java 8的JDK来编译、运行。 《疯狂Java讲义(第3版)》深入介绍了Java编程的相关方面,全书内容覆盖了Java的基本语法结构、Java的面向对象特征、Java集合框架体系、Java泛型、异常处理、Java GUI编程、JDBC数据库编程、Java注释、Java的IO流体系、Java多线程编程、Java网络通信编程和Java反射机制。覆盖了java.lang、java.util、java.text、java.io和java.nio、java.sql、java.awt、javax.swing包下绝大部分类和接口?!斗杩馢ava讲义(第3版)》全面介绍了Java 8的新的接口语法、Lambda表达式、方法引用、构造器引用、函数式编程、流式编程、新的日期、时间API、并行支持、改进的类型推断、重复注解、JDBC 4.2新特性等新特性。