1

単純な移行を実行しようとしていますが、エラーが発生します

django.db.utils.DatabaseError: (1050, "Table 'introspect_test' already exists").

実際のMySQLデータベースを見ると、呼び出されたテーブルが表示introspect_testされず、Django モデルでそのようなテーブルが定義されていません。Google-Fu を少し調べてみると、これintrospect_testは外部キー制約と South のエラー チェックと関係があることがわかります。

この問題全体は私自身のエラーから発生したと思います-実行中python manage.py migrate app_nameに誤ってヒットCTRL-Cし、プロセスを停止しました。

問題は、このミステリアスな問題を解決して、introspect_test正常に移行できるようにするにはどうすればよいかということだと思います。

ありがとう

4

1 に答える 1

1

うーん、ばかげた私...私が気付いていなかったのは、テーブルintrospect_testがすべて大文字であり、したがってアルファベット順にソートされていないことです。ラップトップの画面が小さいため、show tables;すべてのテーブルをリストしましたが、上位のいくつかを切り取ったことがわかりました。問題のテーブルはINTROSPECT_TEST、上部にそのままラベルが付けられているためです。

簡単に実行してdrop table INTROSPECT_TESTから、通常どおり移行しました。

修理済み。

于 2013-04-06T17:49:02.413 に答える