Comment supprimer une contrainte non nulle dans un serveur SQL à l'aide d'une requête

118

J'essaie de supprimer la contrainte non nulle dans le serveur SQL 2008 sans perdre de données.

Shantanu Gupta
la source

Réponses:

203
 ALTER TABLE YourTable ALTER COLUMN YourColumn columnType NULL
Michael Pakhantsov
la source
5
J'ai trouvé que je devais inclure le type dans YourColumn, par exemple. ALTER TABLE YourTable ALTER COLUMN YourColumn int NULL
Adam Butler
ou vous pouvez faire: modifier la table nom_table modifier le type nom_colonne (30) NULL. 30 étant la taille de votre type de colonne, exemple: varchar (30)
nr5
43
En postgres:ALTER TABLE YourTable ALTER COLUMN YourColumn DROP NOT NULL
Shane
2

Supprimer la contrainte not nullànull

ALTER TABLE 'test' CHANGE COLUMN 'testColumn' 'testColumn' datatype NULL;
Nan Yu
la source
Pourquoi cela fonctionne-t-il et non la réponse acceptée ci-dessus pour mysql?
HopeKing
1
@HopeKing la question portait sur Microsoft SQL Server et non sur MySql.
Orchidoris
-1

Supprimer la contrainte de colonne: not nullpournull

ALTER TABLE test ALTER COLUMN column_01 DROP NOT NULL;
PasQualE
la source
Cela ne ressemble pas à un T-SQL valide. Bien que la question ait été marquée avec SQL, notez que la question fait explicitement référence à SQL Server qui n'accepte que T-SQL.
TT.