Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analytics Platform System (PDW)
Punkt końcowy analizy SQL w usłudze Microsoft Fabric
Hurtownia danych w usłudze Microsoft Fabric
Baza danych SQL w usłudze Microsoft Fabric
Zmienia istniejącą funkcję Transact-SQL lub CLR, która została wcześniej utworzona przez wykonanie instrukcji bez zmieniania CREATE FUNCTION uprawnień i bez wpływu na funkcje zależne, procedury składowane lub wyzwalacze.
Tip
Można określić CREATE OR ALTER FUNCTION , aby utworzyć nową funkcję, jeśli ta funkcja nie istnieje według tej nazwy lub zmienić istniejącą funkcję w jednej instrukcji.
Transact-SQL konwencje składni
Syntax
-- Transact-SQL Scalar Function Syntax
ALTER FUNCTION [ schema_name. ] function_name
( [ { @parameter_name [ AS ][ type_schema_name. ] parameter_data_type
[ = default ] }
[ ,...n ]
]
)
RETURNS return_data_type
[ WITH <function_option> [ ,...n ] ]
[ AS ]
BEGIN
function_body
RETURN scalar_expression
END
[ ; ]
-- Transact-SQL Inline Table-Valued Function Syntax
ALTER FUNCTION [ schema_name. ] function_name
( [ { @parameter_name [ AS ] [ type_schema_name. ] parameter_data_type
[ = default ] }
[ ,...n ]
]
)
RETURNS TABLE
[ WITH <function_option> [ ,...n ] ]
[ AS ]
RETURN [ ( ] select_stmt [ ) ]
[ ; ]
-- Transact-SQL Multistatement Table-valued Function Syntax
ALTER FUNCTION [ schema_name. ] function_name
( [ { @parameter_name [ AS ] [ type_schema_name. ] parameter_data_type
[ = default ] }
[ ,...n ]
]
)
RETURNS @return_variable TABLE <table_type_definition>
[ WITH <function_option> [ ,...n ] ]
[ AS ]
BEGIN
function_body
RETURN
END
[ ; ]
-- Transact-SQL Function Clauses
<function_option>::=
{
[ ENCRYPTION ]
| [ SCHEMABINDING ]
| [ RETURNS NULL ON NULL INPUT | CALLED ON NULL INPUT ]
| [ EXECUTE_AS_Clause ]
}
<table_type_definition>:: =
( { <column_definition> <column_constraint>
| <computed_column_definition> }
[ <table_constraint> ] [ ,...n ]
)
<column_definition>::=
{
{ column_name data_type }
[ [ DEFAULT constant_expression ]
[ COLLATE collation_name ] | [ ROWGUIDCOL ]
]
| [ IDENTITY [ (seed , increment ) ] ]
[ <column_constraint> [ ...n ] ]
}
<column_constraint>::=
{
[ NULL | NOT NULL ]
{ PRIMARY KEY | UNIQUE }
[ CLUSTERED | NONCLUSTERED ]
[ WITH FILLFACTOR = fillfactor
| WITH ( < index_option > [ , ...n ] )
[ ON { filegroup | "default" } ]
| [ CHECK ( logical_expression ) ] [ ,...n ]
}
<computed_column_definition>::=
column_name AS computed_column_expression
<table_constraint>::=
{
{ PRIMARY KEY | UNIQUE }
[ CLUSTERED | NONCLUSTERED ]
( column_name [ ASC | DESC ] [ ,...n ] )
[ WITH FILLFACTOR = fillfactor
| WITH ( <index_option> [ , ...n ] )
| [ CHECK ( logical_expression ) ] [ ,...n ]
}
<index_option>::=
{
PAD_INDEX = { ON | OFF }
| FILLFACTOR = fillfactor
| IGNORE_DUP_KEY = { ON | OFF }
| STATISTICS_NORECOMPUTE = { ON | OFF }
| ALLOW_ROW_LOCKS = { ON | OFF }
| ALLOW_PAGE_LOCKS ={ ON | OFF }
}
-- CLR Scalar and Table-Valued Function Syntax
ALTER FUNCTION [ schema_name. ] function_name
( { @parameter_name [AS] [ type_schema_name. ] parameter_data_type
[ = default ] }
[ ,...n ]
)
RETURNS { return_data_type | TABLE <clr_table_type_definition> }
[ WITH <clr_function_option> [ ,...n ] ]
[ AS ] EXTERNAL NAME <method_specifier>
[ ; ]
-- CLR Function Clauses
<method_specifier>::=
assembly_name.class_name.method_name
<clr_function_option>::=
}
[ RETURNS NULL ON NULL INPUT | CALLED ON NULL INPUT ]
| [ EXECUTE_AS_Clause ]
}
<clr_table_type_definition>::=
( { column_name data_type } [ ,...n ] )
-- Syntax for In-Memory OLTP: Natively compiled, scalar user-defined function
ALTER FUNCTION [ schema_name. ] function_name
( [ { @parameter_name [ AS ][ type_schema_name. ] parameter_data_type
[ NULL | NOT NULL ] [ = default ] }
[ ,...n ]
]
)
RETURNS return_data_type
[ WITH <function_option> [ ,...n ] ]
[ AS ]
BEGIN ATOMIC WITH (set_option [ ,... n ])
function_body
RETURN scalar_expression
END
<function_option>::=
{ | NATIVE_COMPILATION
| SCHEMABINDING
| [ EXECUTE_AS_Clause ]
| [ RETURNS NULL ON NULL INPUT | CALLED ON NULL INPUT ]
}
Arguments
schema_name
Nazwa schematu, do którego należy funkcja zdefiniowana przez użytkownika.
function_name
Funkcja zdefiniowana przez użytkownika ma zostać zmieniona.
Note
Nawiasy są wymagane po nazwie funkcji, nawet jeśli parametr nie jest określony.
@ parameter_name
Parametr w funkcji zdefiniowanej przez użytkownika. Można zadeklarować jeden lub więcej parametrów.
Funkcja może mieć maksymalnie 2 100 parametrów. Wartość każdego zadeklarowanego parametru musi być podana przez użytkownika podczas wykonywania funkcji, chyba że zdefiniowano wartość domyślną dla parametru.
Określ nazwę parametru przy użyciu znaku (@) jako pierwszego znaku. Nazwa parametru musi być zgodna z regułami identyfikatorów. Parametry są lokalne dla funkcji; Te same nazwy parametrów mogą być używane w innych funkcjach. Parametry mogą mieć miejsce tylko stałych; Nie można ich używać zamiast nazw tabel, nazw kolumn ani nazw innych obiektów bazy danych.
Note
ANSI_WARNINGS nie jest honorowany podczas przekazywania parametrów w procedurze składowanej, funkcji zdefiniowanej przez użytkownika lub podczas deklarowania i ustawiania zmiennych w instrukcji wsadowej. Jeśli na przykład zmienna jest zdefiniowana jako char(3), a następnie ustawiona na wartość większą niż trzy znaki, dane zostaną obcięte do zdefiniowanego rozmiaru, a instrukcja INSERT lub UPDATE zakończy się powodzeniem.
[ type_schema_name. ] parameter_data_type
Jest typem danych parametru i opcjonalnie schematem, do którego należy. W przypadku funkcji Transact-SQL dozwolone są wszystkie typy danych, w tym typy zdefiniowane przez użytkownika CLR, z wyjątkiem typu danych znacznika czasu . W przypadku funkcji CLR wszystkie typy danych, w tym typy zdefiniowane przez użytkownika CLR, są dozwolone z wyjątkiem typów danych tekstowych, ntekstu, obrazu i znacznika czasu . Nie można określić parametru typu kursora i tabeli jako typu danych parametrów w funkcjach Transact-SQL lub CLR.
Jeśli nie określono type_schema_name , aparat bazy danych programu SQL Server wyszukuje parameter_data_type w następującej kolejności:
Schemat zawierający nazwy typów danych systemu SQL Server.
Domyślny schemat bieżącego użytkownika w bieżącej bazie danych.
Schemat
dbow bieżącej bazie danych.
[ = wartość domyślna ] **
Wartość domyślna parametru. Jeśli zdefiniowano wartość domyślną , funkcja może zostać wykonana bez określania wartości dla tego parametru.
Note
Wartości parametrów domyślnych można określić dla funkcji CLR z wyjątkiem typów danych varchar(max) i varbinary(max).
Jeśli parametr funkcji ma wartość domyślną, podczas wywoływania funkcji należy określić słowo kluczowe DEFAULT w celu pobrania wartości domyślnej. To zachowanie różni się od używania parametrów z wartościami domyślnymi w procedurach składowanych, w których pominięcie parametru również implikuje wartość domyślną.
return_data_type
Wartość zwracana przez skalarną funkcję zdefiniowaną przez użytkownika. W przypadku funkcji Transact-SQL dozwolone są wszystkie typy danych, w tym typy zdefiniowane przez użytkownika CLR, z wyjątkiem typu danych znacznika czasu . W przypadku funkcji CLR wszystkie typy danych, w tym typy zdefiniowane przez użytkownika CLR, są dozwolone z wyjątkiem typów danych tekstowych, ntekstu, obrazu i znacznika czasu . Nie można określić typu kursora i tabeli bezserwerowej jako zwracanego typu danych w funkcjach Transact-SQL lub CLR.
function_body
Określa, że szereg instrukcji Transact-SQL, które razem nie generują efektu bocznego, takiego jak modyfikowanie tabeli, definiują wartość funkcji. function_body jest używana tylko w funkcjach skalarnych i funkcjach wielostanowych tabel.
W funkcjach skalarnych function_body jest serią Transact-SQL instrukcji, które razem dają w wyniku wartość skalarną.
W funkcjach wielostanowych wartości tabeli function_body jest serią instrukcji Transact-SQL, które wypełniają zmienną zwracaną TABLE.
scalar_expression
Określa, że funkcja skalarna zwraca wartość skalarną.
TABLE
Określa, że zwracana wartość funkcji table-valued jest tabelą. Tylko stałe i @local_variables mogą być przekazywane do funkcji wartości tabeli.
W wbudowanych funkcjach wartości tabeli zwracana wartość TABLE jest definiowana za pomocą pojedynczej instrukcji SELECT. Funkcje wbudowane nie mają skojarzonych zmiennych zwracanych.
W funkcjach @ wielostanowych wartości tabeli return_variable jest zmienną TABLE używaną do przechowywania i gromadzenia wierszy, które powinny być zwracane jako wartość funkcji. @ return_variable można określić tylko dla funkcji Transact-SQL, a nie dla funkcji CLR.
select-stmt
Pojedyncza instrukcja SELECT, która definiuje wartość zwracaną funkcji wbudowanej tabeli.
NAZWA <ZEWNĘTRZNA method_specifier>_name.method_name
Dotyczy: SQL Server 2008 (10.0.x) i nowsze wersje.
Określa metodę zestawu do powiązania z funkcją. assembly_name musi odpowiadać istniejącemu zestawowi w programie SQL Server w bieżącej bazie danych z widocznością. class_name musi być prawidłowym identyfikatorem programu SQL Server i musi istnieć jako klasa w zestawie. Jeśli klasa ma kwalifikowaną nazwę przestrzeni nazw, która używa kropki (.) do oddzielania części przestrzeni nazw, nazwa klasy musi być rozdzielana nawiasami kwadratowymi ([]) lub cudzysłowami ("". method_name musi być prawidłowym identyfikatorem programu SQL Server i musi istnieć jako metoda statyczna w określonej klasie.
Note
Domyślnie program SQL Server nie może wykonać kodu CLR. Można tworzyć, modyfikować i usuwać obiekty bazy danych odwołujące się do modułów środowiska uruchomieniowego języka wspólnego; nie można jednak wykonać tych odwołań w programie SQL Server do momentu włączenia opcji clr enabled. Aby włączyć tę opcję, użyj sp_configure.
Note
Ta opcja nie jest dostępna w zawartej bazie danych.
< > ( { <column_definition column_constraint>| <><> computed_column_definition } [ <table_constraint> ] [ ,... n ] )
Definiuje typ danych tabeli dla funkcji Transact-SQL. Deklaracja tabeli zawiera definicje kolumn i ograniczenia kolumn lub tabel.
< > clr_table_type_definition ( { column_namedata_type } [ ,... n ] )
Dotyczy: SQL Server 2008 (10.0.x) i nowsze, SQL Database (wersja zapoznawcza w niektórych regionach).
Definiuje typy danych tabeli dla funkcji CLR. Deklaracja tabeli zawiera tylko nazwy kolumn i typy danych.
NULL|NIE NULL
Obsługiwane tylko w przypadku natywnie skompilowanych, skalarnych funkcji zdefiniowanych przez użytkownika. Aby uzyskać więcej informacji, zobacz Scalar User-Defined Functions for In-Memory OLTP.
NATIVE_COMPILATION
Wskazuje, czy funkcja zdefiniowana przez użytkownika jest kompilowana natywnie. Ten argument jest wymagany w przypadku natywnie skompilowanych, skalarnych funkcji zdefiniowanych przez użytkownika.
Argument NATIVE_COMPILATION jest wymagany podczas zmiany funkcji i może być używany tylko wtedy, gdy funkcja została utworzona za pomocą argumentu NATIVE_COMPILATION.
ROZPOCZNIJ ATOMOWY OD
Obsługiwane tylko dla natywnie skompilowanych, skalarnych funkcji zdefiniowanych przez użytkownika i jest wymagane. Aby uzyskać więcej informacji, zobacz Bloki atomowe w procedurach natywnych.
SCHEMABINDING
Argument SCHEMABINDING jest wymagany dla natywnie skompilowanych, skalarnych funkcji zdefiniowanych przez użytkownika.
< >function_option::= i <clr_function_option>::=
Określa, że funkcja będzie mieć co najmniej jedną z następujących opcji.
ENCRYPTION
Dotyczy: SQL Server 2008 (10.0.x) i nowsze wersje.
Wskazuje, że aparat bazy danych szyfruje kolumny widoku wykazu zawierające tekst instrukcji ALTER FUNCTION . Użycie szyfrowania uniemożliwia publikowanie funkcji w ramach replikacji programu SQL Server. Nie można określić szyfrowania dla funkcji CLR.
SCHEMABINDING
Określa, że funkcja jest powiązana z obiektami bazy danych, do których się odwołuje. Po określeniu metody SCHEMABINDING nie można modyfikować obiektów podstawowych w sposób, który będzie miał wpływ na definicję funkcji. Sama definicja funkcji musi najpierw zostać zmodyfikowana lub usunięta, aby usunąć zależności od obiektu, który ma zostać zmodyfikowany.
Powiązanie funkcji z obiektami, do których się odwołuje, jest usuwane tylko wtedy, gdy występuje jedna z następujących akcji:
Funkcja zostanie porzucona.
Funkcja jest modyfikowana przy użyciu instrukcji ALTER z nieokreśloną opcją SCHEMABINDING.
Aby zapoznać się z listą warunków, które muszą zostać spełnione, zanim będzie można powiązać funkcję, zobacz CREATE FUNCTION (Transact-SQL).
ZWRACA WARTOŚĆ NULL W PRZYPADKU DANYCH WEJŚCIOWYCH O WARTOŚCI NULL | WYWOŁYWANE PRZY DANYCH WEJŚCIOWYCH NULL
Określa OnNULLCall atrybut funkcji wartości skalarnej. Jeśli nie zostanie określony, CALLED ON NULL INPUT jest domyślnie implikowany. Oznacza to, że treść funkcji jest wykonywana nawet wtedy, gdy NULL jest przekazywana jako argument.
Jeśli RETURNS NULL ON NULL INPUT jest określony w funkcji CLR, wskazuje, że program SQL Server może zwrócić NULL , gdy którykolwiek z odbieranych argumentów ma wartość NULL, bez wywoływania treści funkcji. Jeśli metoda określona w <method_specifier> ma już atrybut niestandardowy wskazujący RETURNS NULL ON NULL INPUT, ale ALTER FUNCTION instrukcja wskazuje CALLED ON NULL INPUT, ALTER FUNCTION instrukcja ma pierwszeństwo. Nie można określić atrybutu OnNULLCall dla funkcji wartości tabeli CLR.
KLAUZULA EXECUTE AS
Określa kontekst zabezpieczeń, w którym jest wykonywana funkcja zdefiniowana przez użytkownika. W związku z tym można kontrolować, które konto użytkownika jest używane przez program SQL Server do sprawdzania poprawności uprawnień do wszystkich obiektów bazy danych, do których odwołuje się funkcja.
Note
Nie można określić funkcji EXECUTE AS dla wbudowanych funkcji zdefiniowanych przez użytkownika.
Aby uzyskać więcej informacji, zobacz Klauzula EXECUTE AS (Transact-SQL).
< >column_definition ::=
Definiuje typ danych tabeli. Deklaracja tabeli zawiera definicje kolumn i ograniczenia. W przypadku funkcji CLR można określić tylko column_name i data_type .
column_name
Nazwa kolumny w tabeli. Nazwy kolumn muszą być zgodne z regułami dotyczącymi identyfikatorów i muszą być unikatowe w tabeli. column_name może składać się z od 1 do 128 znaków.
data_type
Określa typ danych kolumny. W przypadku funkcji Transact-SQL dozwolone są wszystkie typy danych, w tym typy zdefiniowane przez użytkownika CLR, z wyjątkiem znacznika czasu. W przypadku funkcji CLR wszystkie typy danych, w tym typy zdefiniowane przez użytkownika CLR, są dozwolone z wyjątkiem tekstu, ntextu, obrazu, char, varchar, varchar(max)i znacznika czasu. Nie można określić kursora typu innego niż kolumnowy jako typ danych kolumny w funkcjach Transact-SQL lub CLR.
DOMYŚLNY constant_expression
Określa wartość podaną dla kolumny, gdy wartość nie jest jawnie podana podczas wstawiania.
constant_expression jest stałą, NULLlub wartością funkcji systemowej. Definicje DOMYŚLNE można zastosować do dowolnej kolumny, z wyjątkiem tych, które mają właściwość IDENTITY. Nie można określić wartości DEFAULT dla funkcji wartości tabeli CLR.
SORTOWANIE collation_name
Określa sortowanie dla kolumny. Jeśli nie zostanie określona, kolumnie zostanie przypisane domyślne sortowanie bazy danych. Nazwa sortowania może być nazwą sortowania systemu Windows lub nazwą sortowania SQL. Aby uzyskać listę i więcej informacji, zobacz Nazwa sortowania systemu Windows i Nazwa sortowania programu SQL Server.
Klauzulę COLLATE można użyć do zmiany sortowania tylko kolumn typów danych char, varchar, nchar i nvarchar .
Nie można określić funkcji COLLATE dla funkcji o wartości tabeli CLR.
ROWGUIDCOL
Wskazuje, że nowa kolumna jest globalną kolumną unikatowego identyfikatora wiersza. Jako kolumnę ROWGUIDCOL można wyznaczyć tylko jedną unikatową kolumnę na tabelę. Właściwość ROWGUIDCOL można przypisać tylko do kolumny uniqueidentifier .
Właściwość ROWGUIDCOL nie wymusza unikatowości wartości przechowywanych w kolumnie. Nie generuje również automatycznie wartości dla nowych wierszy wstawionych do tabeli. Aby wygenerować unikatowe wartości dla każdej kolumny NEWID , użyj funkcji on INSERT statements. Można określić wartość domyślną; NEWID nie można jednak określić jako wartości domyślnej.
IDENTITY
Wskazuje, że nowa kolumna jest kolumną tożsamości. Po dodaniu nowego wiersza do tabeli program SQL Server udostępnia unikatową, przyrostową wartość kolumny. Kolumny tożsamości są zwykle używane razem z ograniczeniami KLUCZA PODSTAWOWEgo, aby służyć jako unikatowy identyfikator wiersza dla tabeli. Właściwość IDENTITY można przypisać do kolumn tinyint, smallint, int, bigint, decimal(p,0) lub numerycznych (p,0). Dla tabeli można utworzyć tylko jedną kolumnę tożsamości. Nie można używać powiązanych wartości domyślnych i ograniczeń DOMYŚLNYch z kolumną tożsamości. Należy określić zarówno ziarno , jak i przyrost lub żadne. Jeśli żadna z nich nie zostanie określona, wartość domyślna to (1,1).
Nie można określić tożsamości dla funkcji wartości tabeli CLR.
seed
Wartość całkowita, która ma zostać przypisana do pierwszego wiersza w tabeli.
increment
Wartość całkowita, która ma zostać dodana do wartości początkowej dla kolejnych wierszy w tabeli.
< >column_constraint ::= i < table_constraint>::=
Definiuje ograniczenie dla określonej kolumny lub tabeli. W przypadku funkcji CLR jedynym dozwolonym typem ograniczenia jest wartość NULL. Nazwane ograniczenia są niedozwolone.
NULL | NIE NULL
Określa, czy w kolumnie są dozwolone wartości null.
NULL nie jest ściśle ograniczeniem, ale można go określić tak jak NOT NULL.
NOT NULL nie można określić dla funkcji wartości tabeli CLR.
KLUCZ PODSTAWOWY
Ograniczenie, które wymusza integralność jednostki dla określonej kolumny za pomocą unikatowego indeksu. W funkcjach zdefiniowanych przez użytkownika w tabeli ograniczenie KLUCZ PODSTAWOWY można utworzyć tylko dla jednej kolumny na tabelę. Nie można określić klucza PODSTAWOWEgo dla funkcji wartości tabeli CLR.
UNIQUE
Ograniczenie zapewniające integralność jednostki dla określonej kolumny lub kolumn za pośrednictwem unikatowego indeksu. Tabela może mieć wiele unikatowych ograniczeń. Nie można określić unikatowego elementu dla funkcji wartości tabeli CLR.
KLASTROWANE | NIEKLASTROWANE
Wskazuje, że indeks klastrowany lub nieklastrowany jest tworzony dla klucza PODSTAWOWEgo lub unikatowego ograniczenia. Ograniczenia KLUCZA PODSTAWOWEgo korzystają z klastra, a OGRANICZENIA UNIKATOWE używają WARTOŚCI NONCLUSTERED.
KLASTERED można określić tylko dla jednego ograniczenia. Jeśli określono parametr CLUSTERED dla ograniczenia UNIKATOWEGO, a ograniczenie KLUCZA PODSTAWOWEgo jest również określone, KLUCZ PODSTAWOWY używa WARTOŚCI NONCLUSTERED.
Nie można określić klasTERED i NONCLUSTERED dla funkcji o wartości tabeli CLR.
CHECK
Ograniczenie wymuszające integralność domeny przez ograniczenie możliwych wartości, które można wprowadzić w kolumnie lub kolumnach. Nie można określić ograniczeń CHECK dla funkcji wartości tabeli CLR.
logical_expression
Wyrażenie logiczne zwracające wartość TRUE lub FALSE.
< >computed_column_definition::=
Określa kolumnę obliczaną. Aby uzyskać więcej informacji na temat kolumn obliczeniowych, zobacz CREATE TABLE (Transact-SQL) .
column_name
Nazwa kolumny obliczanej.
computed_column_expression
Wyrażenie definiujące wartość obliczonej kolumny.
< >index_option::=
Określa opcje indeksu dla KLUCZA PODSTAWOWEgo lub INDEKSU UNIKATOWEGO. Aby uzyskać więcej informacji na temat opcji indeksu, zobacz TWORZENIE INDEKSU (Transact-SQL).
PAD_INDEX = { ON | WYŁ. }
Określa dopełnienie indeksu. Wartość domyślna to WYŁĄCZONE.
FILLFACTOR = wypełnienie
Określa wartość procentową wskazującą, jak bardzo Aparat baz danych powinien zapełnić poziom liścia każdej strony indeksu podczas tworzenia indeksu lub zmieniania go. fillfactor musi być wartością całkowitą z zakresu od 1 do 100. Wartość domyślna to 0.
IGNORE_DUP_KEY = { ON | WYŁ. }
Określa odpowiedź na błąd, gdy operacja wstawiania próbuje wstawić zduplikowane wartości klucza do unikatowego indeksu. Opcja IGNORE_DUP_KEY dotyczy tylko operacji wstawiania po utworzeniu lub odbudowaniu indeksu. Wartość domyślna to WYŁĄCZONE.
STATISTICS_NORECOMPUTE = { ON | WYŁ. }
Określa, czy statystyki rozkładu są obliczane ponownie. Wartość domyślna to WYŁĄCZONE.
ALLOW_ROW_LOCKS = { ON | WYŁ. }
Określa, czy blokady wierszy są dozwolone. Wartość domyślna to WŁĄCZONE.
ALLOW_PAGE_LOCKS = { ON | WYŁ. }
Określa, czy blokady strony są dozwolone. Wartość domyślna to WŁĄCZONE.
Remarks
Funkcji ALTER nie można użyć do zmiany funkcji wartości skalarnej na funkcję wartości tabeli lub odwrotnie. Ponadto funkcja ALTER nie może służyć do zmiany funkcji wbudowanej na funkcję wielostanową lub odwrotnie. Funkcji ALTER nie można użyć do zmiany funkcji Transact-SQL na funkcję CLR lub odwrotnie.
Następujące instrukcje usługi Service Broker nie mogą być uwzględnione w definicji funkcji zdefiniowanej przez użytkownika Transact-SQL:
BEGIN DIALOG CONVERSATIONEND CONVERSATIONGET CONVERSATION GROUPMOVE CONVERSATIONRECEIVESEND
Permissions
Wymaga uprawnienia ALTER dla funkcji lub schematu. Jeśli funkcja określa typ zdefiniowany przez użytkownika, wymaga uprawnienia EXECUTE dla typu.
W usłudze Microsoft Fabric członkowie ról administratora obszaru roboczego sieci szkieletowej, członka i współautora mogą tworzyć funkcje.