`

mysql 修改表的语法详解

阅读更多

mysql 修改表的详细语法介绍

 

ALTER [IGNORE] TABLE tbl_name

    [alter_specification [, alter_specification] ...]

    [partition_options]

 

algorithm_option:

    ALGORITHM [=] {DEFAULT|INPLACE|COPY}

 

lock_option:

    LOCK [=] {DEFAULT|NONE|SHARED|EXCLUSIVE}

 

alter_specification:

    table_options

  | ADD [COLUMN] col_name column_definition

        [FIRST | AFTER col_name ]

  | ADD [COLUMN] (col_name column_definition,...)

  | ADD {INDEX|KEY} [index_name]

        [index_type] (index_col_name,...) [index_option] ...

  | ADD [CONSTRAINT [symbol]] PRIMARY KEY

        [index_type] (index_col_name,...) [index_option] ...

  | ADD [CONSTRAINT [symbol]]

        UNIQUE [INDEX|KEY] [index_name]

        [index_type] (index_col_name,...) [index_option] ...

  | ADD FULLTEXT [INDEX|KEY] [index_name]

        (index_col_name,...) [index_option] ...

  | ADD SPATIAL [INDEX|KEY] [index_name]

        (index_col_name,...) [index_option] ...

  | ADD [CONSTRAINT [symbol]]

        FOREIGN KEY [index_name] (index_col_name,...)

        reference_definition

  | ALGORITHM [=] {DEFAULT|INPLACE|COPY}

  | ALTER [COLUMN] col_name {SET DEFAULT literal | DROP DEFAULT}

  | CHANGE [COLUMN] old_col_name new_col_name column_definition

        [FIRST|AFTER col_name]

  | LOCK [=] {DEFAULT|NONE|SHARED|EXCLUSIVE}

  | MODIFY [COLUMN] col_name column_definition

        [FIRST | AFTER col_name]

  | DROP [COLUMN] col_name

  | DROP PRIMARY KEY

  | DROP {INDEX|KEY} index_name

  | DROP FOREIGN KEY fk_symbol

  | DISABLE KEYS

  | ENABLE KEYS

  | RENAME [TO|AS] new_tbl_name

  | RENAME {INDEX|KEY} old_index_name TO new_index_name

  | ORDER BY col_name [, col_name] ...

  | CONVERT TO CHARACTER SET charset_name [COLLATE collation_name]

  | [DEFAULT] CHARACTER SET [=] charset_name [COLLATE [=] collation_name]

  | DISCARD TABLESPACE

  | IMPORT TABLESPACE

  | FORCE

  | ADD PARTITION (partition_definition)

  | DROP PARTITION partition_names

  | DISCARD PARTITION {partition_names | ALL} TABLESPACE

  | IMPORT PARTITION {partition_names | ALL} TABLESPACE

  | TRUNCATE PARTITION {partition_names | ALL}

  | COALESCE PARTITION number

  | REORGANIZE PARTITION partition_names INTO (partition_definitions)

  | EXCHANGE PARTITION partition_name WITH TABLE tbl_name [{WITH|WITHOUT} VALIDATION]

  | ANALYZE PARTITION {partition_names | ALL}

  | CHECK PARTITION {partition_names | ALL}

  | OPTIMIZE PARTITION {partition_names | ALL}

  | REBUILD PARTITION {partition_names | ALL}

  | REPAIR PARTITION {partition_names | ALL}

  | REMOVE PARTITIONING

 

 

常用的操作的例子:

1、修改列名,列类型,列名: 下面语句将列名为old_column的列名修改成new_column,并且数据类型为int

 

>alter table tablename change old_column new_column int ;

 

2、修改列的数据类型:将column_name 这个列的数据类型修改成为new_datatype 

 

>alter table tablename modify column_name new_datatype ;

 

3、添加字段

 

>alter table tablename add column_name column_datatype ;

 

4、删除主键

 

>alter table tablename  DROP PRIMARY KEY

 

5、删除分区

 

>alter table tablename  DROP PARTITION partition_names

 

6、删除索引

 

>alter table tablename DROP INDEX index_name

 

7、删除列

 

>alter table tablename DROP  col_name

 

0
1
分享到:
评论

相关推荐

    MySQL多表查询详解

    ### MySQL多表查询详解 #### 一、多表查询的基本概念与操作 多表查询是在实际业务场景中非常常见的需求之一。它允许我们从多个表中检索数据,并将这些数据组合在一起以形成有意义的信息。在MySQL中,多表查询通常...

    MySQL字符串数据类型语法详解.pdf

    MySQL字符串数据类型语法详解

    MySQL的基本语法

    ### MySQL的基本语法详解 #### 一、创建表 在MySQL中,**表**是最基本的数据存储单元,通过创建表来组织和存储数据。创建表的基本语法如下: ```sql CREATE TABLE table_name ( column_name datatype [NOT NULL ...

    sqlite 支持的 sql 语法详解

    4. 不支持某些特定的聚合函数,如 GROUP_CONCAT 在 MySQL 中常见,但在 SQLite 中没有。 5. 不支持窗口函数,如 RANK()、LEAD() 和 LAG()。 6. 不支持某些复杂的子查询操作。 以上就是SQLite支持的主要SQL语法及不...

    MySql的基本语法

    ### MySQL基本语法详解 #### 存储过程 存储过程是一种保存在服务器上的SQL代码块,可以接受输入参数,返回输出参数,并且能够执行复杂的数据库操作。掌握存储过程的基本语法是MySQL学习的重要部分。 ##### 创建...

    SQLServer和MySql语法和关键字的区别详解

    ### SQLServer与MySQL语法及关键字的主要差异 #### 数据类型与特性 1. **枚举与集合类型**: MySQL 支持 `enum` 和 `set` 类型,这些类型允许用户定义一组固定的选择项,而 SQLServer 不支持这两种类型。 2. **字符...

    MySQL:grant_语法详解(MySQL_5.X)

    另一类是数据库开发人员和管理员需要使用的权限,包括对数据库结构的操作权限,如创建表(CREATE)、修改表(ALTER)、删除表(DROP)、创建索引(INDEX)、创建视图(CREATE VIEW)、显示视图源代码(SHOW VIEW)、...

    mysql语法详解

    ### MySQL语法详解 #### 一、数据库操作 **1. 创建数据库** 在MySQL中创建一个新的数据库是一项基本操作。可以通过以下命令完成: ```sql CREATE DATABASE database_name; ``` 例如,创建一个名为`test_db...

    mysql中触发器使用详解.docx

    - 修改触发器需先删除再新建,因为MySQL不支持直接修改触发器。 在触发器中,`NEW`和`OLD`是两个特殊变量,用于访问触发器操作所涉及的行。对于`INSERT`操作,`NEW`变量包含即将插入(`BEFORE`触发器)或已插入(`...

    mysql 参考手册(详解关键字的功能和涉及到的问题)

    在“详解关键字的功能”部分,手册会详细解释每个关键字的作用、语法、参数以及使用时的注意事项。比如,"JOIN"关键字用于将两个或更多表的数据结合在一起,根据指定的条件进行匹配。有多种类型的JOIN,如INNER JOIN...

    mysql语法大全...........................................

    - **修改表**: `ALTERTABLE` 可以用来更改现有表的结构,包括添加、修改或删除列等。 #### 视图操作 - **创建视图**: `CREATEVIEW` 命令可以用来基于一个或多个表创建一个虚拟的表,即视图。 - **删除视图**: `DROP...

    Mysql临时表和派生表

    ### MySQL临时表与派生表详解 #### 一、MySQL临时表 **1.1 临时表概述** MySQL中的临时表是一种特殊的表类型,主要用于存储临时数据或中间结果集,适用于那些需要多次查询同一结果集的场景。根据存储位置的不同,...

    MySQL定义异常和异常处理详解

    MySQL中的异常处理是数据库编程中不可或缺的一部分,它允许开发者预设对可能出现的错误或异常的响应,从而确保程序的稳定性和健壮性。在MySQL中,异常定义和处理主要是通过`DECLARE`语句来实现的。 1. **异常定义**...

    快速上手MySQL图形化操作详解

    MySQL图形化操作详解 MySQL是一种流行的开源关系型数据库管理系统,以其高效、稳定和易于使用而闻名。本篇文章将详细介绍如何快速上手MySQL的图形化操作。 首先,我们需要下载MySQL的相关软件。MySQL的官方主页是...

    MySQL基础语法-空间数据类型详解(二).pdf

    MySQL基础语法——空间数据类型详解第二部分

    mysql-视图详解.doc

    总的来说,MySQL的视图是一个强大的工具,它允许用户根据需求定制数据的展示方式,提高数据访问的安全性和便捷性,同时也简化了复杂的多表查询。正确地设计和使用视图,可以极大地提升数据库系统的灵活性和可维护性...

    mysql数据库的基本操作语法

    ### MySQL数据库基本操作语法知识点详解 #### 一、常用查询操作 **1. 显示所有数据库** - **命令**: `SHOW DATABASES;` - **功能**: 列出当前MySQL服务器上存在的所有数据库。 **2. 删除数据库** - **命令**: ...

    mysql 5.6 教程详解

    官方手册详细描述了MySQL 5.6的功能,包括但不限于通用管理、开发者功能、连接器和APIs、高可用性与可扩展性、安装与升级、服务器管理、SQL语法、服务器选项和变量参考、MySQL版本、启动和关闭、监控、备份、线程池...

Global site tag (gtag.js) - Google Analytics