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

Quelles sont les instructions SQL pour supprimer des champs dans une table ?

coldplay.xixi
Libérer: 2020-07-03 16:20:48
original
15337 Les gens l'ont consulté

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]; ].

Quelles sont les instructions SQL pour supprimer des champs dans une table ?

Instruction SQL pour supprimer les champs de la table

1. Supprimer les colonnes sans valeurs par défaut :

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

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

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

3. Modifiez le nom du champ

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


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

2. Supprimez les contraintes existantes

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

Par exemple :

exec('alter table T_tableName drop constraint  报错信息的约束名' )
Copier après la connexion

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)
Copier après la connexion
<.>Recommandations d'apprentissage associées :

Tutoriel vidéo 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:
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
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!