sql >> Databasteknik >  >> RDS >> Sqlserver

Lägg till standardvärde till en befintlig kolumn baserat på If Then Else sql server 2008

Du kan göra det via CHECK-begränsning,

Först måste du skapa en tabell,

 create table myTemp1(TempId int not null ,TransCode int,ReasonCode int);

och lägg sedan till begränsningen som

skapa tabell myTemp1(TempId int inte null ,TransCode int,ReasonCode int);

alter table myTemp1
add constraint check_role CHECK(case when (TransCode = 1 AND ReasonCode = NULL)
                                then 99 else ReasonCode end = ReasonCode);

ELLER gilla

alter table myTemp1
add constraint check_role CHECK(ReasonCode = (case when (TransCode = 1 AND ReasonCode
                                = NULL) then 99 else ReasonCode end = 1))

demo på http://sqlfiddle.com/#!3/d633a/1



  1. PostgreSQL:Sex inte så lätta stycken

  2. Hur redigerar man snabbt värden i tabell i SQL Server Management Studio?

  3. Hur man dödar MySQL-anslutningar

  4. Vilken datastruktur används i MySql?