従来のMySQLデータベースで動作するDjango1.1プロジェクトがあります。このプロジェクトをOracle(xeおよび11g)に移行しようとしています。移行には2つのオプションがあります。-SQL開発者を使用して移行SQLスクリプトを作成します。-Djangoフィクスチャを使用します。
SQL DeveloperのSQLスクリプトで作成されたスキーマが、syncdbから作成されたスキーマと一致しません。たとえば、SQL開発者がDATE列を作成する間、DjangoはTIMESTAMP列を予期します。
Djangoフィクスチャでsyncdbを使用することは素晴らしいかもしれませんが、MySQLフィクスチャをOracleにロードしようとすると、syncdbを使用した後、次のようになります。IntegrityError:ORA-00001:一意の制約(USER.SYS_C004253)に違反しました
整合性エラーを引き起こす部分を見つけるにはどうすればよいですか?
更新:私が試したdjangoメーリングリストのアドバイスに従って:
MySQLに接続している間にすべてをダンプします:python manage.py dumpdata> Fixture.json
空のスキーマを使用して新しいOracleユーザーを作成し、db接続をOracleに切り替えます(syncdbを実行しませんでした)
次のコマンドを使用してOracleにデータをロードします:python manage.py loaddatafixture.json
loaddataを使用してもエラーは発生しませんが、サーバーを実行してlocalhost:8000に移動すると、次のようになります。ORA-00942:テーブルまたはビューが存在しません
ありがとう