sql >> Databasteknik >  >> RDS >> Sqlserver

Kan jag lägga till en inte null-kolumn utan DEFAULT-värde

Nej, det kan du inte.

För om du kunde, skulle SQL inte veta vad som ska läggas som värde i de redan befintliga posterna. Om du inte hade några poster i tabellen skulle det fungera utan problem.

Det enklaste sättet att göra detta är att skapa kolumnen med en standard och sedan ta bort standarden.

ALTER TABLE dbo.MyTable ADD
MyColumn text NOT NULL CONSTRAINT DF_MyTable_MyColumn DEFAULT 'defaultValue'
ALTER TABLE dbo.MyTable
DROP CONSTRAINT DF_MyTable_MyColumn

Ett annat alternativ skulle vara att lägga till kolumnen utan begränsningen, fylla i värdena för alla celler och lägga till begränsningen.



  1. phpexcel export till excel med bild

  2. Hur skapar jag en matchning efter att ha jämfört två tabeller?

  3. Grundläggande PDO-anslutning till MySQL

  4. Skaffa MySQL Server Version med PDO