【问题标题】:I can't alter table in mysql [duplicate]我无法更改 mysql 中的表 [重复]
【发布时间】:2015-05-10 19:37:11
【问题描述】:

我试图重命名我的一个表中的一列,但 MySQL 返回此错误:

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'COLUMN IPorigen TO IPorig' at line 1

这是我尝试用来重命名列的语句:

ALTER TABLE InformeGeneral RENAME COLUMN IPorigen TO IPorig;

我也试过这个:

sp_RENAME 'InformeGeneral.IPorigen' , 'IPorig' , 'COLUMN';

我不知道我做错了什么?
我的 MySQL 版本是:mysql Ver 14.14 Distrib 5.5.41, for debian-linux-gnu (i686) using readline 6.2

【问题讨论】:

  • 抱歉重复这个问题,我是新来的,英语不是我的语言

标签: mysql rename


【解决方案1】:

使用此语法重命名您的列:

ALTER TABLE InformeGeneral CHANGE IPorigen IPorig datatype(length)

将数据类型替换为INT, VARCHAR 或该列所需的任何内容。

【讨论】:

    【解决方案2】:

    试试这个(假设 IPorigen 的类型是 varchar ):

    ALTER TABLE InformeGeneral change COLUMN IPorigen  IPorig varchar(30);
    

    【讨论】:

      【解决方案3】:

      尝试阅读此内容。 Error renaming a column in MySQL

      您可能需要添加列的数据类型

      【讨论】:

        【解决方案4】:

        这不是一个有效的陈述它应该是

        alter table table_name change col_name new_col_name datatype
        

        http://dev.mysql.com/doc/refman/5.0/en/alter-table.html

        所以在你的情况下应该是

        ALTER TABLE InformeGeneral change IPorigen IPorig;
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2016-10-12
          • 1970-01-01
          • 2012-09-28
          • 1970-01-01
          • 2019-04-06
          • 2016-04-25
          • 2016-06-18
          相关资源
          最近更新 更多