sql >> Databasteknik >  >> RDS >> Sqlserver

Hur man släpper en kolumn med en begränsning i SQL Server

Den här artikeln visar hur man släpper en kolumn i en SQL Server-databas när den kolumnen har en befintlig begränsning (Tips:Du måste släppa begränsningen först).

Om du någonsin har försökt släppa en kolumn, säg så här:

ALTER TABLE Tasks
    DROP COLUMN TaskCode;
GO

Bara för att få ett felmeddelande som detta:

Msg 5074, Level 16, State 1, Line 1
The object 'taskcode_unique' is dependent on column 'TaskCode'.
Msg 4922, Level 16, State 9, Line 1
ALTER TABLE DROP COLUMN TaskCode failed because one or more objects access this column.

Anledningen är att kolumnen har en befintlig begränsning, och du kan inte släppa tabellen när den har en begränsning.

Därför måste du släppa begränsningen innan du släpper tabellen.

Släpp begränsningen först

Så här släpper du begränsningen:

ALTER TABLE Tasks
    DROP CONSTRAINT taskcode_unique;
GO

Resultat:

Commands completed successfully.

Släpp sedan tabellen

Nu när du har släppt begränsningen kan du gå vidare och släppa tabellen:

ALTER TABLE Tasks
    DROP COLUMN TaskCode;
GO

Resultat:

Commands completed successfully.

  1. Hur man skapar användare i Oracle och tilldelar privilegier

  2. Vad är MySQL-ekvivalenten för SQL Servers CHOOSE()-funktion?

  3. Bästa sättet att kontrollera om det finns tomt eller nullvärde

  4. Hitta rader som inte innehåller numerisk data i Oracle