我得到一個超級n00b錯誤,需要語法幫助。語法幫助! SQL Alter Table Alter Column varchar(30) - > 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;
我得到這個錯誤:
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'varchar(100)' at line 1
'MODIFY'將刪除該列的任何其他元數據不在聲明中指定,所以任何'DEFAULT'值,'NOT NULL'等等。爲了保存其他元數據,請參見[this post](http://stackoverflow.com/questions/22914453/change-column-data-型合的MySQL-而不預虧-其他元數據 - 缺省 - NOTNULL)。 – dyllandry 2017-01-04 15:23:52