2012-01-17 13 views
0

私は3つのテーブル:Employee,Emp_AddressおよびEmp_AddressDetailを持っています。SQL Serverにマスタ/ディテールレコードを挿入する方法は?

  1. EmployeeテーブルはマスターでEmp_Addressは詳細です。
  2. Emp_Addressがマスターでが詳細です。

テーブルから別のテーブルにすべての行をコピーしたいとします。

どうすればいいですか?

+1

理解できません!正確な問題は何ですか? 3つのテーブルデータをすべて1つに挿入しますか?またはこれらの3つのテーブルのデータをレプリカテーブルに複製し、外部キー参照の処理について知りたい場合は、 – Alok

+1

最初に 'Employees'からすべての行をコピーします。 - 次に、' Emp_Address'から、 'Emp_AddressDetail'からの行をコピーします。あなたは "子"テーブルから行をコピーすることはできません。 "親"テーブルに対応する行がない場合は.... –

+0

これらの3つのテーブルのデータをレプリカテーブルに複製したい外部キー参照の処理について知っている。 –

答えて

1

あなたの質問が正しいとすれば、あるテーブルのデータを別のテーブルに挿入したいのですか?その場合は、INTOステートメントを調べる必要があります。 http://msdn.microsoft.com/en-us/library/ms188029.aspx

SELECT * INTO dbo.OneTable FROM Production.AnotherTable 
1

のテーブルが定義された外部キーを持っており、それらの外部キー定義は、データ・ダイアグラムを見てみましょう、と持っていない任意のテーブルを識別するために必要なよりも、新しいデータベースに設定する必要がある場合外部キー列。あなたが明示的にSQL Serverは外部キーを維持していない、または外部キーがターゲット・データベースに設定されていない場合は、あなただけのいずれかでデータをコピーすることができた場合は、あなたのケースでコピー順がEmployeeEmp_AddressEmp_AddressDetail

になりますあなたが好きな注文。

自分をコーナーにペイントすることは完全に可能です。 Emp_Addressテーブルへの外部キーであるPrimaryAddressというEmployeeテーブルのフィールドがある場合。

関連する問題