sql >> Database >  >> RDS >> Sqlserver

Syntaxis voor standaardwaarde voor door gebruiker gedefinieerd type als tabel

Gebruik de normale syntaxis (zie CREATE TYPE , MSDN):

(Zoals vermeld in de opmerkingen bij mijn antwoord zou de juiste normale syntaxis het gebruik van benoemde beperkingen zijn, maar tabeltypen kunnen geen benoemde beperking gebruiken en moeten de "verkorte" syntaxis gebruiken).

CREATE TYPE [dbo].[MyDefineType] As Table                
(
  ID int NOT NULL DEFAULT 0
, Column1 int NOT NULL DEFAULT 99
, Column2 Nvarchar(128) NULL DEFAULT N'DefaultValue'
, Column3 Nvarchar(128) NULL
, Column4 Nvarchar(128) NULL 
, Column5 Nvarchar(128) NULL       
)

Gebruik bijvoorbeeld de bovenstaande definitie met standaardwaarden voor de eerste drie kolommen:

DECLARE @t MyDefineType
INSERT @t VALUES (1, DEFAULT, DEFAULT, N'c', N'd', N'e')
SELECT * FROM @t

ID  Column1 Column2         Column3 Column4 Column5
1   99      DefaultValue    c       d       e



  1. Best practices in PHP en MySQL met internationale strings

  2. iPhone:verbinding maken met de database via internet?

  3. MySQL als rij bestaat update anders invoegen

  4. psycopg2 (postgresql) installeren in virtualenv op Windows