DROP DEFAULT (Transact-SQL)

Van toepassing op:SQL ServerAzure SQL Managed Instance

Verwijdert één of meer door de gebruiker gedefinieerde standaardinstellingen uit de huidige database.

Important

DROP DEFAULTzal worden verwijderd in de volgende versie van Microsoft SQL Server. Gebruik deze niet DROP DEFAULT in nieuw ontwikkelingswerk en plan applicaties aan te passen die ze momenteel gebruiken. Gebruik in plaats daarvan standaarddefinities die je kunt maken met het DEFAULT sleutelwoord of ALTER TABLECREATE TABLE.

Transact-SQL syntaxis-conventies

Syntax

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

Arguments

ALS AANWEZIG
Van toepassing op: SQL Server (SQL Server 2016 (13.x) tot en met de huidige versie).

Voorwaardelijk laat de standaard vallen alleen als deze al bestaat.

schema_name
Is de naam van het schema waartoe het standaard behoort.

default_name
Is de naam van een bestaande standaardinstelling. Om een lijst van bestaande standaarden te zien, voer sp_help uit. Standaarden moeten voldoen aan de regels voor identifiers. Het specificeren van de standaard schemanaam is optioneel.

Remarks

Voordat je een default laat vallen, maak je de default los door sp_unbindefault uit te voeren als de default momenteel gebonden is aan een kolom of een alias-datatype.

Nadat een standaard is verwijderd uit een kolom die nullwaarden toestaat, wordt NULL op die positie ingevoegd wanneer rijen worden toegevoegd en wordt er expliciet geen waarde opgegeven. Nadat een standaard is verwijderd uit een NIET NULL-kolom, wordt een foutmelding teruggegeven wanneer rijen worden toegevoegd en er expliciet geen waarde wordt opgegeven. Deze rijen worden later toegevoegd als onderdeel van het typische INSERT statementgedrag.

Permissions

Om uit te voeren DROP DEFAULTmoet een gebruiker minimaal ALTER-toestemming hebben op het schema waartoe het standaard behoort.

Examples

A. Het laten vallen van een default

Als een standaard niet is gebonden aan een kolom of aan een alias-datatype, kan deze gewoon worden verwijderd met behulp van DROP DEFAULT. Het volgende voorbeeld verwijdert de door de gebruiker gemaakte standaardnaam datedflt.

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

Vanaf SQL Server 2016 (13.x) kun je de volgende syntaxis gebruiken.

DROP DEFAULT IF EXISTS datedflt;  
GO  

B. Een standaard die aan een kolom is gebonden laten vallen

Het volgende voorbeeld ontbindt de standaard die aan de EmergencyContactPhone kolom van de Contact tabel is gekoppeld en laat vervolgens de standaard naam .phonedflt

USE AdventureWorks2022;  
GO  
   BEGIN   
      EXEC sp_unbindefault 'Person.Contact.Phone'  
      DROP DEFAULT phonedflt  
   END;  
GO  

Zie ook

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