Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Şunlar için geçerlidir:SQL Server
Azure SQL Veritabanı
Azure SQL Yönetilen Örneği
Azure Synapse Analytics
Analiz Platformu Sistemi (PDW)
Microsoft Fabric'teki SQL analiz uç noktası
Microsoft Fabric'teki ambar
Microsoft Fabric'teki SQL veritabanı
Daha önce deyimi yürütülerek CREATE FUNCTION oluşturulmuş olan mevcut bir Transact-SQL veya CLR işlevini, izinleri değiştirmeden ve bağımlı işlevleri, saklı yordamları veya tetikleyicileri etkilemeden değiştirir.
Tip
Bu adla yeni bir işlev oluşturulmuyorsa yeni bir işlev oluşturmayı belirtebilir CREATE OR ALTER FUNCTION veya var olan bir işlevi tek bir deyimde değiştirebilirsiniz.
Transact-SQL söz dizimi kuralları
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
Kullanıcı tanımlı işlevin ait olduğu şemanın adı.
function_name
Değiştirilecek kullanıcı tanımlı işlev.
Note
Parametre belirtilmemiş olsa bile işlev adından sonra parantez gerekir.
@ parameter_name
Kullanıcı tanımlı işlevdeki bir parametre. Bir veya daha fazla parametre bildirilebilir.
Bir fonksiyon en fazla 2.100 parametreye sahip olabilir. Bildirilen her parametrenin değeri, parametre için bir varsayılan tanımlanmadığı sürece, işlev yürütüldüğünde kullanıcı tarafından sağlanmalıdır.
İlk karakter olarak at işareti (@) kullanarak bir parametre adı belirtin. Parametre adı , tanımlayıcılar için kurallarla uyumlu olmalıdır. Parametreler işlev için yereldir; Aynı parametre adları diğer işlevlerde de kullanılabilir. Parametreler yalnızca sabitlerin yerini alabilir; tablo adları, sütun adları veya diğer veritabanı nesnelerinin adları yerine kullanılamazlar.
Note
ANSI_WARNINGS saklı yordamda, kullanıcı tanımlı işlevde parametreleri geçirirken veya bir batch deyiminde değişkenleri bildirirken ve ayarlarken kabul edilmez. Örneğin, bir değişken char(3) olarak tanımlanırsa ve üç karakterden büyük bir değere ayarlanırsa, veriler tanımlanan boyuta yuvarlanır ve INSERT veya UPDATE deyimi başarılı olur.
[ type_schema_name.] parameter_data_type
Parametre veri türü ve isteğe bağlı olarak ait olduğu şemadır. Transact-SQL işlevler için, CLR kullanıcı tanımlı türler de dahil olmak üzere zaman damgası veri türü dışındaki tüm veri türlerine izin verilir. CLR işlevleri için, CLR kullanıcı tanımlı türler dahil olmak üzere tüm veri türlerine metin, ntext, görüntü ve zaman damgası veri türleri dışında izin verilir. İmleç ve tablo olmayan türler, Transact-SQL veya CLR işlevlerinde parametre veri türü olarak belirtilemez.
type_schema_name belirtilmezse, SQL Server Veritabanı Altyapısı parameter_data_type aşağıdaki sırayla arar:
SQL Server sistem veri türlerinin adlarını içeren şema.
Geçerli veritabanındaki geçerli kullanıcının varsayılan şeması.
Geçerli veritabanındaki
dboşeması.
[ = varsayılan ] **
Parametre için varsayılan değer. Varsayılan bir değer tanımlanırsa, işlev bu parametre için bir değer belirtilmeden yürütülebilir.
Note
Varchar(max) ve varbinary(max) veri türleri dışında CLR işlevleri için varsayılan parametre değerleri belirtilebilir.
İşlevin bir parametresi varsayılan değere sahip olduğunda, varsayılan değeri almak için işlevi çağırırken DEFAULT anahtar sözcüğü belirtilmelidir. Bu davranış, parametrenin atlanmasının aynı zamanda varsayılan değeri de ima ettiği saklı yordamlarda parametrelerin varsayılan değerlerle kullanılmasından farklıdır.
return_data_type
Skaler kullanıcı tanımlı bir işlevin dönüş değeri. Transact-SQL işlevler için, CLR kullanıcı tanımlı türler de dahil olmak üzere zaman damgası veri türü dışındaki tüm veri türlerine izin verilir. CLR işlevleri için, CLR kullanıcı tanımlı türler dahil olmak üzere tüm veri türlerine metin, ntext, görüntü ve zaman damgası veri türleri dışında izin verilir. tablo veimleç türü olmayan türler, Transact-SQL veya CLR işlevlerinde dönüş veri türü olarak belirtilemez.
function_body
Birlikte bir tabloyu değiştirme gibi bir yan etki üretmeyen bir dizi Transact-SQL deyiminin işlevin değerini tanımladığını belirtir. function_body yalnızca skaler işlevlerde ve çok durumlu tablo değerli işlevlerde kullanılır.
Skaler fonksiyonlarda function_body, birlikte skaler bir değer olarak değerlendirilen bir dizi Transact-SQL deyimidir.
Çok durumlu tablo değerli işlevlerde , function_body table dönüş değişkenini dolduran bir dizi Transact-SQL deyimidir.
scalar_expression
Skaler işlevin bir skaler değer döndürdüğünü belirtir.
TABLE
Tablo değerli işlevinin dönüş değerinin bir tablo olduğunu belirtir. Tablo değerli işlevlere yalnızca sabitler ve @local_variables geçirilebilir.
Satır içi tablo değerli işlevlerde, TABLE dönüş değeri tek bir SELECT deyimiyle tanımlanır. Satır içi işlevlerin ilişkili dönüş değişkenleri yoktur.
Çok durumlu tablo değerli işlevlerde, @return_variable işlevin değeri olarak döndürülmesi gereken satırları depolamak ve biriktirmek için kullanılan bir TABLE değişkenidir. @ return_variable yalnızca Transact-SQL işlevler için belirtilebilir, CLR işlevleri için belirtilemez.
select-stmt
Satır içi tablo değerli bir işlevin dönüş değerini tanımlayan tek SELECT deyimi.
EXTERNAL NAME <method_specifier>_name.method_name
için geçerlidir: SQL Server 2008 (10.0.x) ve sonraki sürümler.
İşlevle bağlanacak bir derlemenin yöntemini belirtir. assembly_name , görünürlük açıkken geçerli veritabanındaki SQL Server'daki mevcut bir derlemeyle eşleşmelidir. class_name geçerli bir SQL Server tanımlayıcısı olmalı ve derlemede sınıf olarak bulunmalıdır. Sınıfın ad alanı bölümlerini ayırmak için nokta (.) kullanan ad alanı nitelenmiş bir adı varsa, sınıf adı köşeli ayraç ([]) veya tırnak işaretleri ("") kullanılarak sınırlandırılmalıdır. method_name geçerli bir SQL Server tanımlayıcısı olmalı ve belirtilen sınıfta statik bir yöntem olarak bulunmalıdır.
Note
Varsayılan olarak, SQL Server CLR kodunu yürütemez. Ortak dil çalışma zamanı modüllerine başvuran veritabanı nesneleri oluşturabilir, değiştirebilir ve bırakabilirsiniz; ancak, clr etkin seçeneğini etkinleştirene kadar SQL Server'da bu başvuruları yürütemezsiniz. Seçeneği etkinleştirmek için sp_configure kullanın.
Note
Bu seçenek, kapsanan bir veritabanında kullanılamaz.
< > ( { <column_definition><column_constraint> | <> computed_column_definition } [ <table_constraint> ] [ ,... n ] )
Bir Transact-SQL işlevi için tablo veri türünü tanımlar. Tablo bildirimi, sütun tanımlarını ve sütun veya tablo kısıtlamalarını içerir.
< > clr_table_type_definition ( { column_namedata_type } [ ,... n ] )
Şunlar için geçerlidir: SQL Server 2008 (10.0.x) ve üzeri, SQL Veritabanı (bazı bölgelerde önizleme).
Bir CLR işlevi için tablo veri türlerini tanımlar. Tablo bildirimi yalnızca sütun adlarını ve veri türlerini içerir.
NULL|NOT NULL
Yalnızca yerel olarak derlenmiş, skaler kullanıcı tanımlı işlevler için desteklenir. Daha fazla bilgi için bkz: In-Memory OLTP için Skaler User-Defined İşlevleri.
NATIVE_COMPILATION
Kullanıcı tanımlı bir işlevin yerel olarak derlenip derlenmediğini gösterir. Bu bağımsız değişken, yerel olarak derlenmiş, skaler kullanıcı tanımlı işlevler için gereklidir.
İşlevi DEĞIŞTIRdiğinizde NATIVE_COMPILATION bağımsız değişkeni gereklidir ve yalnızca işlev NATIVE_COMPILATION bağımsız değişkeniyle oluşturulduysa kullanılabilir.
ATOMIK ILE BAŞLAYIN
Yalnızca yerel olarak derlenmiş, skaler kullanıcı tanımlı işlevler için desteklenir ve gereklidir. Daha fazla bilgi için bkz: Yerel Yordamlarda Atomik Bloklar.
SCHEMABINDING
SchemaBINDING bağımsız değişkeni, yerel olarak derlenmiş, skaler kullanıcı tanımlı işlevler için gereklidir.
< >function_option::= ve <clr_function_option>::=
İşlevin aşağıdaki seçeneklerden birine veya daha fazlasına sahip olacağını belirtir.
ENCRYPTION
için geçerlidir: SQL Server 2008 (10.0.x) ve sonraki sürümler.
Veritabanı Altyapısı'nın deyiminin metnini ALTER FUNCTION içeren katalog görünümü sütunlarını şifrelediğini gösterir. ŞIFRELEME kullanıldığında işlevin SQL Server çoğaltmasının bir parçası olarak yayımlanması engellenir. CLR işlevleri için ŞIFRELEME belirtilemez.
SCHEMABINDING
İşlevin, başvurduğu veritabanı nesnelerine bağlı olduğunu belirtir. SCHEMABINDING belirtildiğinde, temel nesneler işlev tanımını etkileyecek şekilde değiştirilemez. Değiştirilecek nesneye olan bağımlılıkları kaldırmak için önce işlev tanımının kendisi değiştirilmeli veya bırakılmalıdır.
İşlevin başvurduğu nesnelere bağlanması, yalnızca aşağıdaki eylemlerden biri gerçekleştiğinde kaldırılır:
İşlev bırakılır.
İşlev, SCHEMABINDING seçeneği belirtilmediğinde ALTER deyimi kullanılarak değiştirilir.
İşlevin şemaya bağlanabilmesi için karşılanması gereken koşulların listesi için bkz. CREATE FUNCTION (Transact-SQL).
NULL GIRIŞTE NULL DÖNDÜRÜR | NULL GIRIŞTE ÇAĞRILDI
Skaler OnNULLCall değerli bir işlevin özniteliğini belirtir. Belirtilmezse, CALLED ON NULL INPUT varsayılan olarak ima edilir. Bu, işlev gövdesi bağımsız değişken olarak geçirilse NULL bile yürütülür.
CLR işlevinde belirtilirse RETURNS NULL ON NULL INPUT , aldığı bağımsız değişkenlerden herhangi biri NULL olduğunda, işlevin gövdesini çağırmadan SQL Server'ın döndürebileceğini NULL gösterir. method_specifier'de <> belirtilen yöntemin RETURNS NULL ON NULL INPUTbelirten özel bir özniteliği zaten varsa, ancak ALTER FUNCTION deyimi gösteriyorsaCALLED ON NULL INPUT, ALTER FUNCTION deyimi önceliklidir.
OnNULLCall CLR tablo değerli işlevler için öznitelik belirtilemez.
EXECUTE AS yan tümcesi
Kullanıcı tanımlı işlevin yürütüldüğü güvenlik bağlamını belirtir. Bu nedenle, SQL Server'ın işlev tarafından başvurulan herhangi bir veritabanı nesnesindeki izinleri doğrulamak için hangi kullanıcı hesabını kullandığını denetleyebilirsiniz.
Note
SATıR içi kullanıcı tanımlı işlevler için EXECUTE AS belirtilemez.
Daha fazla bilgi için bkz: EXECUTE AS Yan Tümcesi (Transact-SQL).
< >column_definition ::=
Tablo veri türünü tanımlar. Tablo bildirimi, sütun tanımlarını ve kısıtlamaları içerir. CLR işlevleri için yalnızca column_name ve data_type belirtilebilir.
column_name
Tablodaki bir sütunun adı. Sütun adları, tanımlayıcı kurallarına uygun olmalı ve tabloda benzersiz olmalıdır. column_name 1 ile 128 karakter arasında olabilir.
data_type
Sütun veri türünü belirtir. Transact-SQL işlevler için, CLR kullanıcı tanımlı türler de dahil olmak üzere zaman damgası dışında tüm veri türlerine izin verilir. CLR işlevleri için, CLR kullanıcı tanımlı türler dahil olmak üzere tüm veri türlerine metin, ntext, görüntü, char, varchar, varchar(max)ve zaman damgası dışında izin verilir. Nonscalar tür imleci, Transact-SQL veya CLR işlevlerinde sütun veri türü olarak belirtilemez.
VARSAYILT constant_expression
Ekleme sırasında açıkça bir değer sağlanmadığında sütun için sağlanan değeri belirtir.
constant_expression bir sabit, NULLveya bir sistem işlevi değeridir. DEFAULT tanımları, IDENTITY özelliğine sahip olanlar dışında herhangi bir sütuna uygulanabilir. CLR tablo değerli işlevler için DEFAULT belirtilemez.
HARMANLAMA collation_name
Sütun için harmanlamayı belirtir. Belirtilmezse, sütuna veritabanının varsayılan harmanlaması atanır. Harmanlama adı bir Windows harmanlama adı veya SQL harmanlama adı olabilir. Ve daha fazla bilgi listesi için bkz. Windows harmanlama adı ve SQL Server Harmanlama Adı.
COLLATE yan tümcesi yalnızca char, varchar, nchar ve nvarchar veri türlerinin sütunlarının harmanlamalarını değiştirmek için kullanılabilir.
CLR tablo değerli işlevler için COLLATE belirtilemez.
ROWGUIDCOL
Yeni sütunun satır genel benzersiz tanımlayıcı sütunu olduğunu gösterir. Tablo başına yalnızca bir benzersiz belirleyici sütunu ROWGUIDCOL sütunu olarak atanabilir. ROWGUIDCOL özelliği yalnızca bir benzersizleştirici sütununa atanabilir.
ROWGUIDCOL özelliği, sütunda depolanan değerlerin benzersizliğini zorlamaz. Ayrıca, tabloya eklenen yeni satırlar için otomatik olarak değer oluşturmaz. Her sütun için benzersiz değerler oluşturmak için, deyimlerde işlevini NEWID kullanınINSERT. Varsayılan bir değer belirtilebilir; ancak, NEWID varsayılan olarak belirtilemez.
IDENTITY
Yeni sütunun bir kimlik sütunu olduğunu gösterir. Tabloya yeni bir satır eklendiğinde, SQL Server sütun için benzersiz, artımlı bir değer sağlar. Kimlik sütunları genellikle birincil anahtar kısıtlamalarıyla birlikte tablonun benzersiz satır tanımlayıcısı olarak kullanılır. IDENTITY özelliği tinyint, smallint, int, bigint, decimal(p,0) veya sayısal (p,0) sütunlara atanabilir. Tablo başına yalnızca bir kimlik sütunu oluşturulabilir. İlişkili varsayılanlar ve DEFAULT kısıtlamaları bir kimlik sütunuyla kullanılamaz. Hem çekirdeği hem de artışı belirtmeniz veya hiçbirini belirtmemeniz gerekir. Hiçbiri belirtilmezse, varsayılan değer (1,1) olur.
CLR tablo değerli işlevler için KIMLIK belirtilemez.
seed
Tablodaki ilk satıra atanacak tamsayı değeri.
increment
Tablodaki ardışık satırlar için çekirdek değere eklenecek tamsayı değeri.
< >column_constraint ::= ve < table_constraint>::=
Belirtilen sütun veya tablo için kısıtlamayı tanımlar. CLR işlevleri için izin verilen tek kısıtlama türü NULL'dir. Adlandırılmış kısıtlamalara izin verilmez.
NULL | NOT NULL
Sütunda boş değerlere izin verilip verilmeyeceğini belirler.
NULL tam olarak bir kısıtlama değildir, ancak aynı gibi NOT NULLbelirtilebilir.
NOT NULL CLR tablo değerli işlevler için belirtilemez.
BİRİNCİL ANAHTAR
Benzersiz bir dizin aracılığıyla belirtilen bir sütun için varlık bütünlüğünü zorlayan bir kısıtlama. Tablo değerli kullanıcı tanımlı işlevlerde, BİRİnCİl ANAHTAR kısıtlaması tablo başına yalnızca bir sütunda oluşturulabilir. CLR tablo değerli işlevler için BİRİnCİl ANAHTAR belirtilemez.
UNIQUE
Benzersiz bir dizin aracılığıyla belirtilen sütun veya sütunlar için varlık bütünlüğü sağlayan kısıtlama. Bir tabloda birden çok BENZERSİz kısıtlaması olabilir. CLR tablo değerli işlevler için BENZERSİz belirtilemez.
KÜMELENDİ | KÜMELENMİDİ
BİRİnCİl ANAHTAR veya BENZERSİz kısıtlaması için kümelenmiş veya kümelenmemiş bir dizin oluşturulduğunu belirtin. BİRİnCİl ANAHTAR kısıtlamaları KÜMELENDİ, BENZERSİz kısıtlamalar ise KÜMELENDİSİ OLMAYAN'ı kullanır.
CLUSTERED yalnızca bir kısıtlama için belirtilebilir. BİRİnCİl ANAHTAR kısıtlaması için KÜMELENDİ belirtilirse ve BİrİnCİl ANAHTAR kısıtlaması da belirtilirse, BİRİnCİl ANAHTAR, KÜMELENDİSİ OLMAYAN'ı kullanır.
CLR tablo değerli işlevler için CLUSTERED ve NONCLUSTERED belirtilemez.
CHECK
Bir sütuna veya sütunlara girilebilen olası değerleri sınırlayarak etki alanı bütünlüğünü zorlayan bir kısıtlama. CLR tablo değerli işlevler için CHECK kısıtlamaları belirtilemez.
logical_expression
DOĞRU veya YANLIŞ döndüren mantıksal ifade.
< >computed_column_definition::=
Hesaplanan sütunu belirtir. Hesaplanan sütunlar hakkında daha fazla bilgi için bkz: CREATE TABLE (Transact-SQL).
column_name
Hesaplanan sütunun adı.
computed_column_expression
Hesaplanan sütunun değerini tanımlayan ifade.
< >index_option::=
BİRİnCİl ANAHTAR veya BENZERSİz dizin için dizin seçeneklerini belirtir. Dizin seçenekleri hakkında daha fazla bilgi için bkz: DİZİNİ OLUŞTUR (Transact-SQL).
PAD_INDEX = { ON | KAPALI }
Dizin doldurmayı belirtir. Varsayılan değer KAPALI'dır.
FILLFACTOR = FILLFACTOR
Veritabanı Altyapısı'nın dizin oluşturma veya değiştirme sırasında her dizin sayfasının yaprak düzeyini ne kadar dolu yapması gerektiğini gösteren bir yüzde belirtir. fillfactor , 1 ile 100 olan bir tamsayı değeri olmalıdır. Varsayılan değer 0'dır.
IGNORE_DUP_KEY = { ON | KAPALI }
Ekleme işlemi benzersiz bir dizine yinelenen anahtar değerleri eklemeyi denediğinde hata yanıtını belirtir. IGNORE_DUP_KEY seçeneği yalnızca dizin oluşturulduktan veya yeniden oluşturulduktan sonra ekleme işlemleri için geçerlidir. Varsayılan değer KAPALI'dır.
STATISTICS_NORECOMPUTE = { ON | KAPALI }
Dağıtım istatistiklerinin yeniden hesaplanıp hesaplanmayacağını belirtir. Varsayılan değer KAPALI'dır.
ALLOW_ROW_LOCKS = { ON | KAPALI }
Satır kilitlerine izin verilip verilmeyeceğini belirtir. Varsayılan değer ON'dır.
ALLOW_PAGE_LOCKS = { ON | KAPALI }
Sayfa kilitlerine izin verilip verilmeyeceğini belirtir. Varsayılan değer ON'dır.
Remarks
ALTER FUNCTION, skaler değerli bir işlevi tablo değerli bir işlev olarak değiştirmek için kullanılamaz (veya tam tersi). Ayrıca, ALTER İŞLEVI satır içi işlevi çok durumlu bir işlev olarak değiştirmek için kullanılamaz (veya tam tersi). ALTER İŞLEVI, bir Transact-SQL işlevini CLR işlevine veya tam tersi olarak değiştirmek için kullanılamaz.
Aşağıdaki Hizmet Aracısı deyimleri Transact-SQL kullanıcı tanımlı işlevin tanımına eklenemez:
BEGIN DIALOG CONVERSATIONEND CONVERSATIONGET CONVERSATION GROUPMOVE CONVERSATIONRECEIVESEND
Permissions
İşlevde veya şemada ALTER izni gerektirir. İşlev kullanıcı tanımlı bir tür belirtiyorsa, tür üzerinde EXECUTE izni gerektirir.
Microsoft Fabric'te Doku çalışma alanı Yöneticisi, Üye ve Katkıda Bulunan rollerinin üyeleri işlevler oluşturabilir.
İlgili içerik
- fonksiyon oluştur (Transact-SQL)
- DROP İŞLEVI (Transact-SQL)
- Yayın Veritabanlarında Şema Değişiklikleri Yapma
- OLAY VERILERI (Transact-SQL)