DROP DEFAULT (Transact-SQL)

Entfernt einen oder mehrere benutzerdefinierte Standardwerte aus der aktuellen Datenbank.

ms188747.note(de-de,SQL.90).gifWichtig:
DROP DEFAULT wird in einer zukünftigen Version von Microsoft SQL Server entfernt. Verwenden Sie die Anweisung DROP DEFAULT beim Entwickeln neuer Anwendungen nicht, und planen Sie das Ändern von Anwendungen, in denen sie aktuell verwendet wird. Verwenden Sie stattdessen Standarddefinitionen, die mit dem DEFAULT-Schlüsselwort von ALTER TABLE oder CREATE TABLE erstellt werden. Weitere Informationen finden Sie unter Erstellen und Ändern von DEFAULT-Definitionen.

Themenlink (Symbol)Transact-SQL-Syntaxkonventionen

Syntax

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

Argumente

schema_name

Gibt den Namen des Schemas an, zu dem der Standardwert gehört.

default_name

Der Name eines vorhandenen Standardwertes. Führen Sie sp_help aus, um eine Liste von vorhandenen Standardwerten anzuzeigen. Standardwerte müssen den Regeln für Bezeichner entsprechen. Das Angeben des Standardschemanamens ist optional.

Hinweise

Bevor ein Standardwert gelöscht wird, muss die Bindung des Standardwertes durch Ausführen von sp_unbindefault aufgehoben werden, wenn der Standardwert aktuell an eine Spalte oder an einen Aliasdatentyp gebunden ist.

Nachdem ein Standardwert aus einer Spalte gelöscht wurde, die NULL-Werte zulässt, wird NULL an dessen Stelle eingefügt, wenn Zeilen hinzugefügt und keine Werte explizit angegeben werden. Nachdem ein Standardwert einer Spalte gelöscht wurde, in der keine NULL-Werte zulässig sind, wird eine Fehlermeldung zurückgegeben, wenn Zeilen hinzugefügt und keine Werte explizit angegeben werden. Diese Zeilen werden später als Teil des typischen Verhaltens der INSERT-Anweisung hinzugefügt.

Berechtigungen

Zum Ausführen von DROP DEFAULT muss ein Benutzer mindestens über die ALTER-Berechtigung für das Schema verfügen, zu dem der Standardwert gehört.

Beispiele

A. Löschen eines Standardwertes

Wenn ein Standardwert nicht an eine Spalte oder an einen Aliasdatentyp gebunden ist, kann er einfach mithilfe von DROP DEFAULT gelöscht werden. Im folgenden Beispiel wird der vom Benutzer erstellte Standardwert datedflt entfernt.

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

B. Löschen eines an eine Spalte gebundenen Standardwertes

Im folgenden Beispiel wird die Bindung des Standardwertes an die EmergencyContactPhone-Spalte in der Employee-Tabelle aufgehoben und dann der Standardwert phonedflt gelöscht.

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

Siehe auch

Verweis

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

Hilfe und Informationen

Informationsquellen für SQL Server 2005