Maison > Article > base de données > Quelles sont les instructions SQL pour supprimer des champs dans une table ?
Les instructions SQL pour supprimer des champs dans la table sont : 1. Supprimer les colonnes sans valeurs par défaut [alter table Test drop COLUMN BazaarType]; ].
Instruction SQL pour supprimer les champs de la table
1. Supprimer les colonnes sans valeurs par défaut :
alter table Test drop COLUMN BazaarType.
2. Supprimer les colonnes avec les valeurs par défaut :
Supprimez d'abord les contraintes (valeurs par défaut)
alter table Test DROP CONSTRAINT DF__Test__BazaarType__3C4ACB5F
(alter table Test DROP COLUMN BazaarType
Le message d'erreur est DF__SheetTest__Attac__0F8D3381
)
Ensuite Après avoir supprimé la colonne
alter table Test drop COLUMN BazaarType
3. Modifiez le nom du champ
ALTER TABLE 表名 ADD 字段名 INT DEFAULT (0) NOT NULL;
Modifiez le type de champ de clé primaire
alter table [tablename] alter column [colname] [newDataType])
Lors de la modification du type de champ d'une table, une erreur est signalée car il y a des contraintes.
a. Définir le champ dans le tableau sur NOT NULL
(non vide) et ajouter une valeur par défaut (valeur par défaut) au champ ajoutera des contraintes au champ, et ces contraintes seront ajoutées. Ensuite, des erreurs similaires se produiront lors de l'utilisation de scripts SQL pour modifier les types de champs et supprimer des champs
b. Recherchez les contraintes existantes sur le champ et supprimez les contraintes existantes
c .Exécutez la modification. /supprimer à nouveau le script.
Solution :
1. Recherchez le nom de contrainte du champ dans la table (ou en fonction de l'invite et de l'objet existants 'DF__******' )
declare @name varchar(50) select @name =b.name from sysobjects b join syscolumns a on b.id = a.cdefault where a.id = object_id('TableName') and a.name ='ColumName'
2. Supprimez les contraintes existantes
exec('alter table TableName drop constraint ' + @name)
Par exemple :
exec('alter table T_tableName drop constraint 报错信息的约束名' )
3. Exécutez ensuite le script pour modifier le type de champ
alter table dbo.T_tableName alter column Id BIGINT not NULL alter table dbo.T_tableName add constraint PK_Id primary key(Id)
<.>Recommandations d'apprentissage associées :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!