新しいDBデザインを使用してSQL Serverデータベースに移行するMS Accessデータベースがあります。 SQL Server DBを使用するアプリケーションの一部が既に書き込まれています。SSISを使用してデータベースを移行および正規化する
移行手順を最も簡単に実行する方法を調べるために、Microsoft SQL Server Integration Services(SSIS)を使い始めました。今、正規化の理由からテーブルを垂直に分割したいと思っています。
Aが構成された例は、この
MS Accessテーブル人
ID
Name
Street
SQL Serverテーブル人
id
name
SQL Serverテーブルアドレスのように見えます
id
person_id
street
SSISでどのようにこのタスクを完了することができますか? idカラムはidentity(autoincrement)カラムなので、古いIDは挿入できません。正しいperson_id外部キーをアドレステーブルに配置するにはどうすればよいですか?
テーブルが3つのテーブルに分割される場合もあります。テーブル2の行はテーブル1に属し、テーブル3の行はテーブル2に属します。
SSISはこれに適していますか?
EDIT これは1回限りの移行ですが、本番データベースが多用下にあるので、我々は、自動化された反復可能なプロセスを持っている必要があり、我々は最近の私達の開発環境での移行に取り組んでいるが、最新のデータではありません。移行のテストを1回実施し、顧客にその動作をレビューさせる予定です。 すべてがうまくいけば、、実際の移行に向かいます。
与えられたソリューションのほとんどには手作業の手順が多く含まれているため、適切ではありません。
これは良い考えですが、私が正しく理解していれば、Access DBをまずSQL Serverにインポートする必要があります。 SQLタスクのソースと宛先の接続はありません。 – GrGr
はい、最初に元のテーブルをインポートしてから操作をすべてSQL Server –
にする方がよいので、最初にアクセスデータベースをインポートしますが、すべてのテーブル名を別のものに設定して一度だけ削除できますあなたはあなたのデータを分割しました。 – Eppz