MySQL 如何修改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 教程
极客教程