DROP DEFAULT (Transact-SQL)

Supprime une ou plusieurs valeurs par défaut définies par l'utilisateur de la base de données active.

ms188747.note(fr-fr,SQL.90).gifImportant :
DROP DEFAULT sera supprimé dans les prochaines versions de Microsoft SQL Server. Évitez d'utiliser DROP DEFAULT dans un nouveau travail de développement et modifiez les applications qui l'utilisent actuellement. À la place, utilisez des définitions par défaut que vous pouvez créer en utilisant le mot clé DEFAULT de ALTER TABLE ou de CREATE TABLE. Pour plus d'informations, consultez Création et modification des définitions DEFAULT.

Icône Lien de rubriqueConventions de syntaxe de Transact-SQL

Syntaxe

DROP DEFAULT { [ schema_name . ] default_name } [ ,...n ] [ ; ]

Arguments

schema_name

Nom du schéma auquel appartient la valeur par défaut.

default_name

Nom de la valeur par défaut existante. Pour afficher la liste des valeurs par défaut qui existent, exécutez sp_help. Les valeurs par défaut doivent être conformes aux règles des identificateurs. La définition du nom de schéma par défaut est facultative.

Notes

Avant de supprimer une valeur par défaut, dissociez la valeur par défaut en exécutant sp_unbindefault si la valeur par défaut est liée à une colonne ou à un type de données alias.

Après avoir supprimé une valeur par défaut d'une colonne qui autorise les valeurs NULL, NULL est inséré dans cette position lorsque des lignes sont ajoutées et qu'aucune valeur n'est explicitement fournie. Après avoir supprimé une valeur par défaut dans une colonne NOT NULL, vous recevez un message d'erreur lorsque vous tentez d'ajouter des lignes sans fournir explicitement une valeur. Ces lignes sont ajoutées ultérieurement comme composantes du comportement général de l'instruction INSERT.

Autorisations

Pour exécuter DROP DEFAULT, l'utilisateur doit avoir l'autorisation ALTER sur le schéma auquel la valeur par défaut appartient.

Exemples

A. Suppression d'une valeur par défaut

Si une valeur par défaut n'est pas liée à une colonne ou à un type de données alias, vous pouvez la supprimer en utilisant DROP DEFAULT. L'exemple suivant supprime la valeur par défaut datedflt créée par l'utilisateur.

USE AdventureWorks;
GO
IF EXISTS (SELECT name FROM sys.objects
         WHERE name = 'datedflt' 
            AND type = 'D')
   DROP DEFAULT datedflt
GO

B. Suppression d'une valeur par défaut liée à une colonne

L'exemple suivant dissocie la valeur par défaut associée à la colonne EmergencyContactPhone de la table Employee et supprime la valeur par défaut phonedflt.

USE AdventureWorks;
GO
IF EXISTS (SELECT name FROM sys.objects
         WHERE name = 'phonedflt' 
            AND type = 'D')
   BEGIN 
      EXEC sp_unbindefault 'Person.Contact.Phone'
      DROP DEFAULT phonedflt
   END
GO

Voir aussi

Référence

CREATE DEFAULT (Transact-SQL)
sp_helptext (Transact-SQL)
sp_help (Transact-SQL)
sp_unbindefault (Transact-SQL)

Aide et Informations

Assistance sur SQL Server 2005