Хранимая процедура sp_unbindefault (Transact-SQL)
Отменяет привязку или удаляет значение по умолчанию из столбца или псевдонима типа данных в текущей базе данных.
Важно! |
---|
В будущей версии Microsoft SQL Server эта возможность будет удалена. Избегайте использования этой возможности в новых разработках и запланируйте изменение существующих приложений, в которых она применяется. Вместо этого рекомендуется создавать описания по умолчанию с использованием ключевого слова DEFAULT в инструкциях ALTER TABLE или CREATE TABLE. Дополнительные сведения см. в разделе Изменение и создание определений DEFAULT. |
Соглашения о синтаксисе в Transact-SQL
Синтаксис
sp_unbindefault [ @objname = ] 'object_name'
[ , [ @futureonly = ] 'futureonly_flag' ]
Аргументы
[ @objname=] 'object_name'
Имя таблицы и столбца или псевдонима типа данных, в которых отменяется привязка значения по умолчанию. Аргумент object_name имеет тип nvarchar(776) и не имеет значения по умолчанию. SQL Server пытается разрешить идентификаторы, состоящие из двух частей, вначале к именам столбцов, а затем к псевдонимам типов данных.При отмене привязки для псевдонима типа данных привязка также отменяется для всех столбцов этого типа данных, имеющих такое же значение по умолчанию. Столбцы с этим типом данных, имеющие непосредственную привязку значений по умолчанию, не затрагиваются.
Примечание. Аргумент object_name может содержать квадратные скобки [] в качестве символов идентификатора с разделителем. Дополнительные сведения см. в разделе Идентификаторы с разделителями (компонент Database Engine).
- [ @futureonly= ] 'futureonly_flag'
Используется только при отмене привязки значения по умолчанию для псевдонима типа данных. Аргумент futureonly_flag имеет тип varchar(15) и значение по умолчанию NULL. Если аргумент futureonly_flag имеет тип futureonly, существующие столбцы этого типа данных не теряют заданного значения по умолчанию.
Значения кодов возврата
0 (успешное завершение) или 1 (неуспешное завершение)
Замечания
Для отображения текста значения по умолчанию требуется выполнить процедуру sp_helptext с именем значения по умолчанию в качестве параметра.
Разрешения
Для отмены привязки значения по умолчанию в столбце таблицы требуется разрешение ALTER для этой таблицы. Для отмены привязки значения по умолчанию в псевдониме типа данных требуется разрешение CONTROL на этот тип или разрешение ALTER для схемы, которой принадлежит этот тип.
Примеры
A. Отмена привязки значения по умолчанию в столбце
В следующем примере отменяется привязка значения по умолчанию в столбце hiredate
таблицы employees
.
EXEC sp_unbindefault 'employees.hiredate'
Б. Отмена привязки значения по умолчанию для псевдонима типа данных
В следующем примере отменяется привязка значения по умолчанию для псевдонима типа данных ssn
. Отменяется привязка существующих и будущих столбцов этого типа.
EXEC sp_unbindefault 'ssn'
В. Использование параметра futureonly_flag
Следующий пример отменяет привязку использования в будущем псевдонима типа данных ssn
, не затрагивая существующие столбцы ssn
.
EXEC sp_unbindefault 'ssn', 'futureonly'
Г. Использование идентификаторов с разделителями
В следующем примере показано использование идентификаторов с разделителями в аргументе object_name .
CREATE TABLE [t.3] (c1 int) -- Notice the period as part of the table
-- name.
CREATE DEFAULT default2 AS 0
GO
EXEC sp_bindefault 'default2', '[t.3].c1'
-- The object contains two periods;
-- the first is part of the table name and the second
-- distinguishes the table name from the column name.
EXEC sp_unbindefault '[t.3].c1'
См. также
Справочник
Системные хранимые процедуры (Transact-SQL)
Хранимые процедуры ядра СУБД (Transact-SQL)
CREATE DEFAULT (Transact-SQL)
DROP DEFAULT (Transact-SQL)
sp_bindefault (Transact-SQL)
sp_helptext (Transact-SQL)
Системные хранимые процедуры (Transact-SQL)