Myslím, že skutečný problém je v tom, že RFQ_ID, Action_Time
by neměl být primární klíč. Vytvořte náhradníka
primární klíč a vložte nejedinečný index do RFQ_ID, Action_Time
.
Aktualizovat :Pokud se opravdu chcete držet svého stávajícího návrhu, můžete udělat to, co jste požadovali, ale použít 10 milisekund místo jedné milisekundy mezi každým řádkem, abyste kompenzovali nízkou přesnost datumu a času. Pomocí čísla řádku můžete určit, kolik milisekund přidat, abyste pro každý řádek získali jiné časové razítko:
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