如何修改MySQL表中列的大小?

2023年 8月 28日 59.8k 0

如何修改MySQL表中列的大小?

我们可以借助 ALTER 命令修改列大小。我们来看看如何修改
列大小。假设我们定义任何具有一定大小的列。在插入时如果我们
与我们定义的相比,给出的尺寸更大,那么就会产生错误。

修改尺寸可以减少上述问题。为了更多的理解,我们可以
借助 CREATE 命令创建表 -

mysql> CREATE table ModifyColumnNameDemo
-> (
-> id int,
-> StudentName varchar(10)
-> );
Query OK, 0 rows affected (0.45 sec)

登录后复制

创建表成功后,我们可以通过INSERT向表中插入记录
命令。

mysql> INSERT into ModifyColumnNameDemo values(1,'CarolTaylor');
ERROR 1406 (22001): Data too long for column 'StudentName' at row 1

登录后复制

从上面的查询中,我们得到错误1406。这个错误可以在修改时解决
柱子。为此,我们可以使用 ALTER 命令。以下是语法 -

ALTER table yourTableName modify column_name;

登录后复制

应用上述查询将列的大小修改为某个大小 -

mysql> ALTER table ModifyColumnNameDemo modify StudentName varchar(200);
Query OK, 0 rows affected (1.54 sec)
Records: 0 Duplicates: 0 Warnings: 0

登录后复制

之后我们可以检查列名“StudentName”的大小为200。查询如下
如下 -

mysql> DESC ModifyColumnNameDemo;

登录后复制

以下是输出 -

+-------------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------------+--------------+------+-----+---------+-------+
|id | int(11) | YES | | NULL| |
| StudentName | varchar(200) | YES | | NULL | |
+-------------+--------------+------+-----+---------+-------+
2 rows in set (0.04 sec)

登录后复制

看上面的StudentName列,大小已经改为200。现在我们可以插入
将一条记录写入表中,我们不会收到任何错误。让我们检查一下 -

mysql> INSERT into ModifyColumnNameDemo values(1,'CarolTaylor');
Query OK, 1 row affected (0.14 sec)

登录后复制

以上记录已成功插入表中。我们可以显示记录
在 SELECT 命令的帮助下插入上面 -

mysql> SELECT * from ModifyColumnNameDemo;

登录后复制

以下是输出 -

| id | StudentName |
+------+-------------+
| 1 | CarolTaylor|
+------+-------------+
1 row in set (0.00 sec)

登录后复制

看上面的输出,修改大小后记录已经插入成功
专栏。

以上就是如何修改MySQL表中列的大小?的详细内容,更多请关注每日运维网(www.mryunwei.com)其它相关文章!

相关文章

Oracle如何使用授予和撤销权限的语法和示例
Awesome Project: 探索 MatrixOrigin 云原生分布式数据库
下载丨66页PDF,云和恩墨技术通讯(2024年7月刊)
社区版oceanbase安装
Oracle 导出CSV工具-sqluldr2
ETL数据集成丨快速将MySQL数据迁移至Doris数据库

发布评论