0

2 つの異なるテーブルの 3 つの列を同期させておく必要があります。

MS SQL Server 2008

create table a(
     id int IDENTITY(1,1),
     name1 nvarchar(255),
     name2 nvarchar(255),
     date1 date default null,
     date2 date default null,
     ...
     CONSTRAINT pk primary key (id),
     CONSTRAINT uniqueNames UNIQUE (name1,name2))

2 番目のテーブルの最初の 3 列を複製し、それらを最新の状態に保つ (挿入、削除、更新) 別のテーブルを作成しようとしています。トリガーを見ていましたが、一度に複数の行を挿入または更新すると、これは正しく実行されないというのがコンセンサスのようです。これを達成する方法について何か考えはありますか?

4

1 に答える 1

1

理想的には、重複したフィールドを別のテーブルに移動し、外部キーを介してそれらを参照することにより、データを正規化します。

ただし、トリガーを使用してこの問題を解決することもできます。ここを見てください:複数行更新のトリガーを書くには?

于 2013-10-16T23:11:32.233 に答える