sql >> Database teknologi >  >> RDS >> Sqlserver

Hvordan opretter man en unik begrænsning kun på datodelen af ​​en datetime?

Nå, i SQL Server 2008 er der en ny datatype kaldet "DATE" - du kan bruge den kolonne og oprette et indeks på den.

Du kan selvfølgelig også tilføje en beregnet kolonne af typen "DATE" til din tabel og blot udfylde datodelen af ​​DATETIME-kolonnen i den beregnede kolonne, gøre den PERSISTED og indeksere den. Burde fungere fint!

Sådan noget:

ALTER TABLE dbo.Entries
   ADD DateOnly as CAST(CompositionDate AS DATE) PERSISTED

CREATE UNIQUE INDEX UX_Entries ON Entries(DateOnly, Slug)

Marc



  1. Hvordan kontrollerer man, om e-mail allerede er registreret?

  2. Kan Visual Studio 2012 Load-test fange ydeevnetællere for Linux-server og Oracle-database?

  3. JPA sammensat primær nøgle

  4. Registrering af kolonneændringer i en postgres-opdateringstrigger