Maison > base de données > SQL > le corps du texte

Quelles sont les instructions SQL pour supprimer des champs de table ?

coldplay.xixi
Libérer: 2020-06-22 15:35:19
original
6381 Les gens l'ont consulté

Tutoriel recommandé : "Tutoriel vidéo mysql"

Quelles sont les instructions SQL pour supprimer des champs de table ?

Les instructions SQL pour supprimer les champs de la table sont :

1 Supprimer les colonnes sans valeurs par défaut :

alter table Test drop COLUMN BazaarType
Copier après la connexion

2. Colonne de valeur :

Supprimez d'abord la contrainte (valeur 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)

puis supprimez la colonne alter table Test DROP COLUMN BazaarType

3.

ALTER TABLE 表名 ADD 字段名 INT  DEFAULT (0) NOT NULL;
Copier après la connexion

Modifier le type de champ de clé primaire

alter table [tablename] alter column [colname] [newDataType])
Copier après la connexion

Lors de la modification du type de champ d'une table, une erreur sera signalée car il sont des contraintes.

a. Des opérations telles que définir un champ dans la table sur NOT NULL et ajouter une valeur par défaut à un champ ajouteront des contraintes au champ. Après avoir ajouté ces contraintes, utilisez des scripts SQL pour modifier le type de champ et supprimer le champ.

b. Recherchez les contraintes existantes sur le champ et supprimez les contraintes existantes

c. Exécutez à nouveau le script de modification/suppression.

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'
Copier après la connexion

2. Supprimez la contrainte existante

exec('alter table TableName drop constraint ' + @name)
Copier après la connexion

Par exemple : exec('alter table T_tableName drop constraint Le nom de la contrainte du message d'erreur' )

3 .Exécuter à nouveau Modifiez simplement le script du 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)
Copier après la connexion

Articles connexes recommandés : "Article technique sur la base de données SQL"

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!

Étiquettes associées:
sql
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal