2016-08-20 16 views
1

移行をデバッグするのに役立つ必要があります。外部キーを使用したDjango Mysql移行エラー

私はdjangoの移行がどこで停止するかを見つけるためにステップごとに各クエリを実行しようとしました。

このクエリは失敗します。エラーで

mysql> ALTER TABLE `elezioniAgendaCore_comments` ADD CONSTRAINT `elezioniAgendaCore_comments_uid_id_670175fa07fa7b47_fk_user_uid` FOREIGN KEY (`uid_id`) REFERENCES `user` (`uid`); 

ERROR 1005 (HY000): Can't create table 'activedoc.#sql-3f7_2b' (errno: 150) 

は私が牽引テーブルを持っています。

TABLEユーザー:

mysql> show columns from user; 
+-------------------+--------------+------+-----+---------+----------------+ 
| Field    | Type   | Null | Key | Default | Extra   | 
+-------------------+--------------+------+-----+---------+----------------+ 
| uid    | bigint(20) | NO | PRI | NULL | auto_increment | 
| name    | varchar(50) | YES | MUL | NULL |    | 
| surname   | varchar(50) | YES | MUL | NULL |    | 
| email    | varchar(100) | YES | MUL | NULL |    | 
+-------------------+--------------+------+-----+---------+----------------+ 

表elezioniAgendaComments:

mysql> show columns from elezioniAgendaCore_comments; 
+------------------+--------------+------+-----+---------+----------------+ 
| Field   | Type   | Null | Key | Default | Extra   | 
+------------------+--------------+------+-----+---------+----------------+ 
| id    | int(11)  | NO | PRI | NULL | auto_increment | 
| signature  | varchar(255) | NO |  | NULL |    | 
| message   | longtext  | NO |  | NULL |    | 
| created   | datetime  | NO |  | NULL |    | 
| published  | tinyint(1) | NO |  | NULL |    | 
| adempimento_id | int(11)  | NO | MUL | NULL |    | 
| parentComment_id | int(11)  | YES | MUL | NULL |    | 
| uid_id   | bigint(20) | NO |  | NULL |    | 
+------------------+--------------+------+-----+---------+----------------+ 

答えて

1

私は1つのテーブルがMyISAMのエンジンを使用して作成されましたが見つかりました:

SHOW CREATE TABLE user; 

[...]

) ENGINE=MyISAM AUTO_INCREMENT=307 DEFAULT CHARSET=latin1 | 

他のテーブル:

mysql> SHOW CREATE TABLE elezioniAgendaCore_comments; 

[...]

) ENGINE=InnoDB DEFAULT CHARSET=latin1 | 

それから私は、両方のテーブルをInnoDBテーブルに移行。今回はエラーはありません。

関連する問題