OBJECT_DEFINITION (Transact-SQL)

Zwraca Transact-SQLtekstuźródło definicji określonego obiektu.

Ikona łącza do tematuJęzyka Transact-SQL składni konwencje

Składnia

OBJECT_DEFINITION ( object_id )

Argumenty

  • object_id
    Jest to identyfikator obiektu ma być używany.object_idjest inti przyjętej do reprezentowania obiektu w bieżącym kontekście bazy danych.

Zwracane typy

nvarchar(max)

Wyjątki

Zwraca wartość NULL w błąd lub jeśli wywołujący nie ma uprawnień do wyświetlenia obiektu.

Użytkownik może tylko przeglądać metadane securables, który użytkownik jest właścicielem lub dla którego użytkownik ma uprawnienia.Oznacza to, że metadane-wysyłających, funkcje wbudowane takie jak OBJECT_DEFINITION może zwracać wartość NULL, jeśli użytkownik nie ma żadnych uprawnień do obiektu.Aby uzyskać więcej informacji, zobacz Konfiguracja widoczność metadanych i Rozwiązywanie problemów z metadanych widoczności.

Uwagi

Aparat baz danych programu SQL Server Zakłada się, że object_id znajduje się w bieżącym kontekście bazy danych.sortowanie definicji obiektu zawsze zgodny z kontekstu wywołania bazy danych.

OBJECT_DEFINITION stosuje się do następujących typów obiektów:

  • C = ograniczenie typu Check

  • D = domyślnie (ograniczenie czy urzędem autonomicznym)

  • P =procedura składowana SQL

  • FN = SQL wartość skalarna funkcja

  • R = reguły

  • RF = procedurę filtrowania replikacji

  • TR = SQL wyzwalacza (o zakresie schematu DML wyzwalacza, lub DDL na bazy danych lub serwera zakres)

  • Jeżeli = SQL wbudowany tabela-wycenione funkcja

  • TF =tabela SQL-wycenione funkcja

  • V = widoku

Uprawnienia

Definicje obiektów systemu są publicznie widoczne.Definicja obiektów użytkownika jest widoczne dla właściciela obiektu lub stypendystów, które mają jeden z następujących uprawnień: ZMIEŃ FORMANTU, przejęcie na własność lub definicji WIDOKU.Uprawnienia te są niejawnie posiadanych przez członków db_owner, db_ddladmin, i db_securityadmin ról stałej bazy danych.

Przykłady

A.Zwracanie tekstu źródło obiektu użytkownika

Poniższy przykład zwraca definicji wyzwalacza zdefiniowane przez użytkownika, uAddress, Person schematu.Wbudowanych funkcja OBJECT_ID jest używane do zwracania identyfikator obiektu wyzwalacz do OBJECT_DEFINITION instrukcja.

USE AdventureWorks2008R2;
GO
SELECT OBJECT_DEFINITION (OBJECT_ID(N'Person.uAddress')) AS [Trigger Definition]; 
GO

B.Zwracanie tekstu źródło obiektu systemu

Poniższy przykład zwraca definicji systemu procedura składowana sys.sp_columns.

USE AdventureWorks2008R2;
GO
SELECT OBJECT_DEFINITION (OBJECT_ID(N'sys.sp_columns')) AS [Object Definition];
GO