2015-10-15 52 views
0

我試圖添加到table.To列添加到表做,所以我想無法列在MySQL

ALTER TABLE requirements Modify COLUMN parent_id int(11); 

,但是當我試圖執行這個查詢MySQL不長迴應。所以每次我必須殺死查詢。

我創建使用

CREATE TABLE requirements (requirement_id smallint(6) NOT NULL AUTO_INCREMENT, 
    product_id smallint(6) NOT NULL, 
    name varchar(255) CHARACTERSET latin1 NOT NULL DEFAULT '', 
    PRIMARY KEY (requirement_id), 
    UNIQUE KEY requirement_product_id_name_idx (product_id,name), 
    UNIQUE KEY requirement_product_idx (requirement_id,product_id), 
    KEY requirement_name_idx_v2 (name)) 
    ENGINE=InnoDB 
    AUTO_INCREMENT=7365 
    DEFAULT CHARSET=utf8; 

請幫助我知道我爲什麼不能執行ALTER TABLE query.I是新的數據庫有什麼錯我的ALTER TABLE查詢表。

+2

您是否嘗試過'ALTER TABLE要求添加COLUMN parent_id int(11);'因爲修改對現有列不是新的。 –

回答

1

根據你的表定義parent_id似乎是一個你想添加的新列,所以你的查詢應該是添加列而不是修改。

試試這個:

alter table requirements add column parent_id int(11); 

SQL FIDDLE DEMO

在一個側面說明:

需要有CHARACTERSET之間的空間在這裏

name varchar(255) CHARACTERSET latin1 NOT NULL DEFAULT '', 

應該

name varchar(255) CHARACTER SET latin1 NOT NULL DEFAULT '',