本当の問題は RFQ_ID, Action_Time
だと思います 主キーであってはなりません。 代理
を作成する 主キーを作成し、RFQ_ID, Action_Time
に一意でないインデックスを配置します .
更新 :既存の設計に本当に固執したい場合は、要求したことを行うことができますが、datetime の精度の低さを補うために、各行の間に 1 ミリ秒ではなく 10 ミリ秒を使用します。行番号を使用して追加するミリ秒数を決定し、行ごとに異なるタイムスタンプを取得できます。
INSERT INTO QSW_RFQ_Log
(RFQ_ID, Action_Time, Quote_ID, Note)
SELECT
RFQ_ID,
DATEADD(millisecond, 10 * ROW_NUMBER() OVER (ORDER BY Quote_ID), GETDATE()) AS Action_Time,
Quote_ID,
'Added to RFQ on Initialization' AS Note
FROM QSW_Quote