0
を見つけたとき、列の上位ランクのランクを高めるために:COLBが呼び出されトリガが設定以下の重複
- 私は2列で、colA(データ型varchar型)を持つテーブルがあるとCOLB (データ型はint)
- ユーザーが新しい行を挿入(またはEを更新する場合
:必ずしも
チャレンジを発注していないユニークである必要があり、「ランク」、(すなわち1,2,3)、新しい(まだ存在していない)ランク(例えば、ランク付けされていないランク)を割り当てる。 4)=>問題ありません。
しかし、この場合、既に存在する新しい行(または既存のもの)を挿入すると、トリガーはすべてのランク(つまり2と3)を1つ増やす必要があります。だから、2が3になり、そして3は次のような結果をもたらすはずですその後4
CREATE TABLE Test (
colA varchar(5),
colB int
)
INSERT INTO Test
VALUES
('Row1', 1),
('Row2', 2),
('Row3', 3)
INSERT INTO Test
Values
('Row4', 2)
次のようになります。
Row1 => 1
Row2 => 3
Row3 => 4
Row4 => 2
チャレンジ2:ランクはギャップがある場合に何をすべきかすなわち、
Row1 => 1
Row2 => 2
Row3 => 4
今、新しい行を挿入したいRow4、2)表は次のようになります。
Row1 => 1
Row2 => 3
Row3 => 4
Row4 => 2
アイデアはありますか?私は今でもこれに対処する方法をしていません...