繁体   English   中英

如何将列的类型从 varchar(30) 更改为 varcahar(100)?

[英]How to change the type of a column from varchar(30) to varcahar(100)?

我有一个这样描述的表:

mysql> describe easy_table;
+---------------------+--------------+------+-----+---------+----------------+
| Field               | Type         | Null | Key | Default | Extra          |
+---------------------+--------------+------+-----+---------+----------------+
| id                  | bigint(20)   | NO   | PRI | NULL    | auto_increment |
| version             | bigint(20)   | NO   |     | NULL    |                |
| account_id          | bigint(20)   | NO   | MUL | NULL    |                |
| city                | varchar(30)  | NO   |     | NULL    |                |
...
| name                | varchar(255) | YES  |     | NULL    |                |
| name_two            | varchar(255) | YES  |     | NULL    |                |
+---------------------+--------------+------+-----+---------+----------------+
13 rows in set (0.03 sec)

我正在尝试使城市 varchar 大于 varchar(100) 并且这条线不起作用

alter table easy_table alter column city varchar(100);

这也行不通

alter table easy_table alter column city varchar(100) not null;

我收到此错误:

错误 1064 (42000):您的 SQL 语法有错误; 查看与您的 MySQL 服务器版本相对应的手册,了解在第 1 行的“varchar(100)”附近使用的正确语法

alter table easy_table modify column city varchar(100) not null;

使用 Modify 关键字,而不是 Alter

尝试

alter table easy_table change city city varchar(100);
alter table easy_table modify city VARCHAR(100) ; 

必须是您命令更改列的大小。

请参考此页面..这是有用的链接..

http://php.about.com/od/learnmysql/p/alter_table.htm

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM