小さなSQL Serverデータベースをクローンするための自動化されたプロセスを作成する必要がありますが、すべてのプライマリキーはすべてのプライマリキーがソースとは異なるはずです(すべてのユニークIDENIERを使用しています)主キー)。私たちはすべて同じスキーマを持つ数千ものデータベースを持っており、この "クローン"プロセスを使用して、キー以外のすべてのデータが一致するが、参照整合性が維持された新しいデータベースを作成する必要があります。新しいプライマリキーを持つSQL Serverデータベースをクローン
これを行う簡単な方法はありますか?
アップデート - 例:
各データベースを複製する必要がある〜250個のトランザクションテーブルがあります。 (各テーブルがのUniqueIdentifier主キー= IDを持つ)いくつかのテーブルとそれらの関係を次の簡単な例を考えてみましょう:
location
doctor
doctor_location (to doctor.id via doctor_id, to location.id via location_id)
patient
patient_address (to patient.id via patient_id)
patient_medical_history (to patient.id via patient_id)
patient_doctor (to patient.id via patient_id, to doctor.id via doctor_id)
patient_visit (to patient.id via patient_id)
patient_payment (to patient.id via patient_id)
我々はデータベースのクローンを作成する必要がある理由は(買収されているオフィスが原因であるか、所有権を変更パートナーシップの変更により、これは比較的頻繁に発生します)。これが発生すると、オフィスの税金と保険情報が変更されます。法的にはこれにはまったく新しい企業体制が必要であり、オフィス間の財務は完全に分離する必要があります。
しかし、ほとんどのオフィスでは患者の履歴をすべて保持したいので、データベースを「クローン」することを選択します。新しいデータベースは財務履歴は削除されますが、すべての患者/医者のデータは維持されます。古いデータベースは "クローン"のポイントまでのすべての情報を持ちます。
新しいGUIDが必要な理由は、レポート作成の目的ですべてのデータベースを1つのリレーショナルデータベースに統合するからです。すべてのトランザクションテーブルにはGUIDがあるので、クローンの場合を除いて、これはうまくいきます。
これまでの唯一の解決策は、データベースをテキストファイルにダンプし、GUIDを検索して置き換えることでした。これはばかげて時間がかかるので、より良い方法を望んでいました。
どのようなタイプのデータを持ち出したいですか?それは主に検索データですか?だからあなたはあなたのデータベースをクローンし、すべてのデータもクローンしたい、あるいは単にデータを検索したいのですか?たとえば、キー以外のデータはどういう意味ですか? – peter
ルックアップデータはそれほど重要ではないので、常に同じであり、それをスクリプト化することができます(また、整数キーも固定されています)。取引データが主な関心事です。例を挙げてqを更新します。 –