Ich habe eine temporäre Tabelle erstellt, wie kann ich mit einem Skript überprüfen, dass es hinzugefügt wurde. Also ich versuche ein Skript zu erstellen, um die temporale Tabelle zu erstellen, wenn sie nicht bereits erstellt wurde. Die, wenn nichtÜberprüfen, ob zeitliche Tabelle vorhanden ist
arbeitenIF (OBJECT_ID('[dbo].[CarHistory]') IS NULL)
BEGIN
Print 'Add Temporal table to Car table'
Alter table Car
ADD SysStartTime DATETIME2 GENERATED ALWAYS AS ROW START HIDDEN DEFAULT GETUTCDATE(),
SysEndTime DATETIME2 GENERATED ALWAYS AS ROW END HIDDEN DEFAULT CONVERT(DATETIME2, '9999-12-31 23:59:59.9999999'),
PERIOD FOR SYSTEM_TIME (StartTime, EndTime)
ALTER TABLE dbo.Car SET (SYSTEM_VERSIONING = ON (HISTORY_TABLE=dbo.CarHistory));
END
aber ich habe diesen Fehler Msg 13597, Ebene 16, Status 2, Zeile 16 Temporal system_time Zeitraum ist bereits auf dem Tisch definiert ‚dbo.Car‘, weil ich es bereits hinzugefügt haben .
überprüfen, ob die Spalte SYSTEM_TIME existiert – Backs
Sieh dir diese Antwort von den anderen Tagen an ... http://stackoverflow.com/questions/42511328/sql-server-create-temp-table-if-doesnt-exist/42512671?noredirect= 1 # Kommentar72162698_42512671 – manderson