
要更新列大小,可以使用alter命令。语法如下 - alter table yourTableName change yourColumnName yourColumnName data type; 登录后复制 为了理解上述语法,让我们创建一个表。创建表的查询 - mysql> create table DataTruncated
−> (
−> id int,
−> Name varchar(5)
−> );
Query OK, 0 rows affected (0.64 sec) 登录后复制 看看上面的“Name”列,列大小为 5。每当我们给出的大小大于 5 时,MySQL 就会给出以下错误 - mysql> insert into DataTruncated values(101,'JohnSmith');
ERROR 1406 (22001): Data too long for column 'Name' at row 1 登录后复制 现在更新“名称”列的列大小。查询如下 - mysql> alter table DataTruncated change Name Name varchar(200);
Query OK, 0 rows affected (2.01 sec)
Records: 0 Duplicates: 0 Warnings: 0 登录后复制 将相同的记录插入到表中。现在,由于我们将列大小从 5 更新为 25,因此没有可见错误 - mysql> insert into DataTruncated values(101,'JohnSmith');
Query OK, 1 row affected (0.11 sec) 登录后复制 显示记录 - mysql> select *from DataTruncated; 登录后复制 以下是输出 - +------+-----------+
| id | Name |
+------+-----------+
| 101 | JohnSmith |
+------+-----------+
1 row in set (0.00 sec) 登录后复制 |