1

私は MySQL と South で Django を使用しています。移行で何か問題が発生するまでは、すべてがうまくいっています。次に、データベースを損傷または破壊することが多いエラーが発生し、次のようになります。

 ! Since you have a database that does not support running
 ! schema-altering statements in transactions, we have had 
 ! to leave it in an interim state between migrations.

私のデータベース テーブルはすべて InnoDB であり、私が知る限りトランザクションをサポートしています。South が移行でトランザクションを使用できるようにするには、どうすればよいですか?

4

1 に答える 1

5

エラー メッセージの要点は、スキーマを変更している場合、MySQLはトランザクションをサポートしていないということです。MySQL は、データの作成/更新/選択中のトランザクションのみをサポートします。South Web サイトの Database-Specific Issues セクションで、MySQL について書かれている内容を注意深く読んでください。

モデルの移行を使用したい場合は、Django で完全に透過的な PostgreSQL に切り替えることができます。唯一の変更点は、settings.pyデータベース セクション (およびもちろん PostgreSQL のインストール) です。

于 2012-05-06T20:39:52.880 に答える