sys.assembly_modules (Transact-SQL)
針對由 Common Language Runtime (CLR) 組件定義的每個函數、程序或觸發程序,各傳回一個資料列。這個目錄檢視會將 CLR 預存程序、CLR 觸發程序或 CLR 函數對應至它們的基本實作。TA、AF、PC、FS 和 FT 類型的物件,各有相關聯的組件模組。若要找出物件與組件之間的關聯,可以將這個目錄檢視合併到其他目錄檢視。例如,當您建立 CLR 預存程序時,它在 sys.objects、sys.procedures (繼承自 sys.objects) 以及 sys.assembly_modules 中各以一個資料列代表它。預存程序本身在 sys.objects 和 sys.procedures 則是以中繼資料代表。程序基礎 CLR 實作的參考,則是在 sys.assembly_modules 中。
資料行名稱 |
資料類型 |
描述 |
---|---|---|
object_id |
int |
SQL 物件的物件識別碼。在資料庫中,這是唯一的。 |
assembly_id |
int |
建立這個模組所用之組件的識別碼。 |
assembly_class |
sysname |
定義這個模組之組件內的類別名稱。 |
assembly_method |
sysname |
定義這個模組之 assembly_class 內的方法名稱。 如果是彙總函式 (AF),則為 NULL。 |
null_on_null_input |
bit |
模組宣告的目的不是為了因應任何 NULL 輸入而產生 NULL 輸出。 |
execute_as_principal_id |
int |
執行內容所用的資料庫主體識別碼,由 CLR 函數、預存程序或觸發程序的 EXECUTE AS 子句所指定。 NULL = EXECUTE AS CALLER。這是預設值。 指定資料庫主體的識別碼 = EXECUTE AS SELF、EXECUTE AS user_name 或 EXECUTE AS login_name。 -2 = EXECUTE AS OWNER。 |