SQL Server 2005、ASP.NET & Windows 2003を使用してWebアプリケーションとそのインフラストラクチャを再開発していますが、LAMMP(memcachedの余分なM)スキーマは非常にリファクタリングされているので(私はそれを行うのに正当な理由があります)、カスタムの移行アプリケーションを作成する必要があります。リファクタリングされたMySQLのInnoDBキーと制約の問題
問題は、InnoDBのプライマリ+外部キーの制約が、自分のMySQL/InnoDBテーブルにデータを挿入できないことです。私はすでにDISABLE KEYS &のFOREIGN_KEY_CHECKSメソッドを使用していましたが、DISABLE KEYSなどの変更をしようとしたときにエラーを投げたり、InnoDBでサポートされていないために一時的に自動インクリメントを削除したり、空のテーブルの列のプライマリキーの割り当て、またはテーブルが空のときにレコードを入力するときにキーがすでに存在しているというエラーをスローする移行アプリケーション。これ以外にも、最初にすべての鍵を取り除いて後で戻すことができる他に何かがありますか(それは私にも地獄を与えるでしょう)?
ありがとうございます!
をあなたは循環依存がない限り、移行のレコードがキー制約のいずれかに違反することなく挿入することができるいくつかの順序が存在しなければなりません。 – Rafe
循環参照はありませんが、チップに感謝します。 –