sql >> Database >  >> RDS >> Sqlserver

Hoe krijg ik datum-/tijdgegevens uit een TIMESTAMP-kolom?

TIMESTAMP is een ongelukkige naam die het SQL Server-team het gegevenstype heeft gegeven. Het is voor gelijktijdigheid en heeft niets te maken met datum of tijd - ze hebben aanbevolen de alias ROWVERSION te gebruiken om verwarring te voorkomen. Uit dit Books Online-artikel:"Gebruik in DDL-instructies waar mogelijk rowversion in plaats van tijdstempel."

Helaas kunt u geen datum-/tijdgegevens afleiden uit de ROWVERSION kolom die u al heeft, maar als deze informatie belangrijk is, moet u de kolommen CreatedDate / ModifiedDate toevoegen, bijvoorbeeld:

ALTER TABLE dbo.foo ADD CreatedDate DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP;
ALTER TABLE dbo.foo ADD ModifiedDate DATETIME NULL;

Maak vervolgens een TRIGGER die wordt geactiveerd op UPDATE om de ModifiedDate-waarde actueel te houden. Mogelijk moet u beslissen of u wilt dat de ModifiedDate NULL is of gelijk aan CreatedDate bij initialisatie.



  1. utl_file.fopen Parameters in Oracle

  2. Hoe tel je alle rijen bij gebruik van SELECT met LIMIT in MySQL-query?

  3. Toegang 2016 voor Dummies Cheatsheet

  4. Buffers (cirkel) in PostGIS