• 技术文章 >数据库 >mysql教程

    mysql表中怎么修改字段?

    青灯夜游青灯夜游2020-10-13 16:39:04原创51

    在mysql表中,可以使用“ALTER TABLE 表名 CHANGE 旧字段名 新字段名 数据类型;”语句来修改字段名称;使用“ALTER TABLE 表名 MODIFY 字段名 新数据类型;”语句来修改字段数据类型。

    (推荐教程:mysql视频教程

    修改字段名称

    MySQL 中修改表字段名的语法规则如下:

    ALTER TABLE 表名 CHANGE 旧字段名 新字段名 数据类型;

    其中:

    例 1

    使用 ALTER TABLE 修改表 tb_emp1 的结构,将 col1 字段名称改为 col3,同时将数据类型变为 CHAR(30),SQL 语句和运行结果如下所示。

    mysql> ALTER TABLE tb_emp1
        -> CHANGE col1 col3 CHAR(30);
    Query OK, 0 rows affected (0.76 sec)
    Records: 0  Duplicates: 0  Warnings: 0
    mysql> DESC tb_emp1;
    +--------+-------------+------+-----+---------+-------+
    | Field  | Type        | Null | Key | Default | Extra |
    +--------+-------------+------+-----+---------+-------+
    | col3   | char(30)    | YES  |     | NULL    |       |
    | id     | int(11)     | YES  |     | NULL    |       |
    | name   | varchar(30) | YES  |     | NULL    |       |
    | deptId | int(11)     | YES  |     | NULL    |       |
    | salary | float        | YES  |     | NULL    |       |
    +--------+-------------+------+-----+---------+-------+
    5 rows in set (0.01 sec)

    CHANGE 也可以只修改数据类型,实现和 MODIFY 同样的效果,方法是将 SQL 语句中的“新字段名”和“旧字段名”设置为相同的名称,只改变“数据类型”。

    提示:由于不同类型的数据在机器中的存储方式及长度并不相同,修改数据类型可能会影响数据表中已有的数据记录,因此,当数据表中已经有数据时,不要轻易修改数据类型。

    修改字段数据类型

    修改字段的数据类型就是把字段的数据类型转换成另一种数据类型。在 MySQL 中修改字段数据类型的语法规则如下:

    ALTER TABLE 表名 MODIFY 字段名 新数据类型;

    其中:

    例 2

    使用 ALTER TABLE 修改表 tb_emp1 的结构,将 name 字段的数据类型由 VARCHAR(22) 修改成 VARCHAR(30),SQL 语句和运行结果如下所示。

    mysql> ALTER TABLE tb_emp1
        -> MODIFY name VARCHAR(30);
    Query OK, 0 rows affected (0.15 sec)
    Records: 0  Duplicates: 0  Warnings: 0
    mysql> DESC tb_emp1;
    +--------+-------------+------+-----+---------+-------+
    | Field  | Type        | Null | Key | Default | Extra |
    +--------+-------------+------+-----+---------+-------+
    | col1   | int(11)     | YES  |     | NULL    |       |
    | id     | int(11)     | YES  |     | NULL    |       |
    | name   | varchar(30) | YES  |     | NULL    |       |
    | col2   | int(11)     | YES  |     | NULL    |       |
    | deptId | int(11)     | YES  |     | NULL    |       |
    | salary | float        | YES  |     | NULL    |       |
    +--------+-------------+------+-----+---------+-------+
    6 rows in set (0.00 sec)

    语句执行后,发现表 tb_emp1 中 name 字段的数据类型已经修改成 VARCHAR(30),修改成功。

    以上就是mysql表中怎么修改字段?的详细内容,更多请关注php中文网其它相关文章!

    本文原创发布php中文网,转载请注明出处,感谢您的尊重!
    专题推荐:mysql
    上一篇:如何修改mysql中列的默认值 下一篇:mysql怎么建立外键约束
    第13期线上培训班

    相关文章推荐

    • mysql57服务怎么删除• mysql中索引可以删除吗?• mysql视图怎么修改表中信息• MySQL高级查询函数有哪些• mysql如何设置数据表的默认编码格式

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网