sys.sp_unbindefault (Transact-SQL)

platí pro:SQL Server

Zrušení vazby nebo odebrání výchozí hodnoty ze sloupce nebo z datového typu aliasu v aktuální databázi

Důležité

Tato funkce bude odebrána v budoucí verzi SQL Server. Nepoužívejte tuto funkci v nové vývojové práci a naplánujte úpravu aplikací, které tuto funkci aktuálně používají. Vytvořte výchozí definice použitím DEFAULT klíčového slova v příkazech ALTER TABLE or CREATE TABLE místo toho.

Transact-SQL konvence syntaxe

Syntaxe

sys.sp_unbindefault
    [ @objname = ] N'objname'
    [ , [ @futureonly = ] 'futureonly' ]
[ ; ]

Argumenty

[ @objname = ] N'objname'

Název tabulky a sloupce nebo datového typu aliasu pro zrušení vazby výchozí hodnoty. @objname je nvarchar(776), bez defaultu. SQL Server se pokusí přeložit identifikátory dvou částí na názvy sloupců a potom na datové typy aliasů.

Pokud zrušíte vazbu výchozího datového typu aliasu, všechny sloupce tohoto datového typu, které mají stejné výchozí nastavení, budou také nevázané. Sloupce tohoto datového typu s výchozími nastaveními vázanými přímo na ně nemají vliv.

Poznámka:

@objname mohou obsahovat závorky [] jako znaky identifikátoru s oddělovači. Další informace naleznete v tématu Identifikátory databáze.

[ @futureonly = ] 'FutureOnly'

Používá se pouze při zrušení vazby výchozího datového typu aliasu. @futureonly je varchar(15), s výchozím hodnotou NULL. Pokud je @futureonlyfutureonly, existující sloupce datového typu nepřijdou o zadanou výchozí hodnotu.

Hodnoty návratového kódu

0 (úspěch) nebo 1 (selhání).

Poznámky

Pokud chcete zobrazit text výchozího nastavení, spusťte sp_helptext jako parametr název výchozí hodnoty.

Povolení

Pokud chcete zrušit vazbu výchozího sloupce tabulky, musíte k tabulce mít ALTER oprávnění. Pokud chcete zrušit vazbu výchozího datového typu aliasu, vyžaduje CONTROL oprávnění k typu nebo ALTER oprávnění schématu, ke kterému typ patří.

Příklady

A. Zrušení vazby výchozího sloupce

Následující příklad zruší vazbu výchozí hodnoty ze hiredate sloupce employees tabulky.

EXECUTE sp_unbindefault 'employees.hiredate';

B. Zrušení vazby výchozího datového typu aliasu

Následující příklad zruší vazbu výchozího datového typu ssnaliasu . Zruší vazbu existujících a budoucích sloupců daného typu.

EXECUTE sp_unbindefault 'ssn';

C. Použití futureonly_flag

Následující příklad zruší vazbu budoucího použití datového typu ssn alias, aniž by to ovlivnilo existující ssn sloupce.

EXECUTE sp_unbindefault 'ssn', 'futureonly';

D. Používejte vymezené identifikátory

Následující příklad ukazuje použití identifikátorů s oddělovači v @objname parametru. Název t.3 tabulky obsahuje tečku, takže jsou vyžadovány oddělovače závorek. První tečka sp_unbindefault je ve volání součástí názvu tabulky a druhá odděluje název tabulky od názvu sloupce.

CREATE TABLE [t.3] (c1 INT);
CREATE DEFAULT default2 AS 0;
GO

EXECUTE sp_bindefault 'default2', '[t.3].c1';
EXECUTE sp_unbindefault '[t.3].c1';