Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Область применения: SQL Server Управляемый экземпляр SQL Azure
Удаляет одно или несколько пользовательских значений по умолчанию из текущей базы данных.
Внимание
Инструкция DROP DEFAULT в следующей версии сервера Microsoft SQL Server будет удалена. Не используйте инструкции DROP DEFAULT в новых разработках и запланируйте модификацию приложений, использующих эту инструкцию в настоящее время. Вместо этого используйте определения по умолчанию, которые могут создаваться при помощи ключевого слова DEFAULT инструкций ALTER TABLE и CREATE TABLE.
Соглашения о синтаксисе Transact-SQL
Синтаксис
DROP DEFAULT [ IF EXISTS ] { [ schema_name . ] default_name } [ ,...n ] [ ; ]
Аргументы
IF EXISTS
Применимо к: SQL Server (SQL Server 2016 (13.x) до текущей версии.
Условное удаление таблицы только в том случае, если она уже существует.
schema_name
Имя схемы, которой принадлежит значение по умолчанию.
default_name
Имя существующего значения по умолчанию. Для просмотра списка значений по умолчанию выполните процедуру sp_help. Имена значений по умолчанию должны соответствовать требованиям к именам идентификаторов. Задание имени схемы значения по умолчанию необязательно.
Замечания
Перед удалением значения по умолчанию отвяжите его, выполнив процедуру sp_unbindefault, если это значение по умолчанию в настоящее время привязано к столбцу или псевдониму типа данных.
После удаления значения по умолчанию из столбца, в котором допускаются значения NULL, везде на место значения вставляется NULL, если добавляются строки и явно не предоставляется никакое значение. После удаления значения по умолчанию из столбца со свойством NOT NULL, если добавляются строки и явно не предоставляется никакое значение, возвращается сообщение об ошибке. Эти строки добавляются позже как часть обычных действий инструкции INSERT.
Разрешения
Для выполнения инструкции DROP DEFAULT у пользователя должно быть по крайней мере разрешение ALTER на схему, к которой принадлежит значение по умолчанию.
Примеры
А. Удаление значения по умолчанию
Если значение по умолчанию не привязано к столбцу или псевдониму типа данных, оно может быть удалено при помощи инструкции DROP DEFAULT. В следующем примере удаляется созданное пользователем значение по умолчанию с именем datedflt.
USE AdventureWorks2022;
GO
IF EXISTS (SELECT name FROM sys.objects
WHERE name = 'datedflt'
AND type = 'D')
DROP DEFAULT datedflt;
GO
Начиная с SQL Server 2016 (13.x) можно использовать следующий синтаксис.
DROP DEFAULT IF EXISTS datedflt;
GO
B. Удаление значения по умолчанию, привязанного к столбцу
В следующем примере отвязывается значения по умолчанию, связанное со столбцом EmergencyContactPhone таблицы Contact, затем удаляется само значение с именем phonedflt.
USE AdventureWorks2022;
GO
BEGIN
EXEC sp_unbindefault 'Person.Contact.Phone'
DROP DEFAULT phonedflt
END;
GO
См. также
CREATE DEFAULT (Transact-SQL)
sp_helptext (Transact-SQL)
sp_help (Transact-SQL)
sp_unbindefault (Transact-SQL)