Udostępnij za pomocą


OBJECTPROPERTY (Transact-SQL)

Dotyczy:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)Punkt końcowy analizy SQL w usłudze Microsoft FabricHurtownia danych w usłudze Microsoft FabricBaza danych SQL w usłudze Microsoft Fabric

Zwraca informacje o obiektach o zakresie schematu w bieżącej bazie danych. Aby uzyskać listę obiektów o zakresie schematu, zobacz sys.objects (Transact-SQL). Tej funkcji nie można używać w przypadku obiektów, które nie są objęte zakresem schematu, takich jak wyzwalacze języka definicji danych (DDL) i powiadomienia o zdarzeniach.

Transact-SQL konwencje składni

Składnia

OBJECTPROPERTY ( ID , property )

Arguments

identyfikator

Wyrażenie reprezentujące identyfikator obiektu w bieżącej bazie danych. Identyfikator jest int i przyjmuje się, że jest obiektem o zakresie schematu w bieżącym kontekście bazy danych.

właściwość

Wyrażenie reprezentujące informacje, które mają być zwracane dla obiektu określonego przez identyfikator. właściwość może być jedną z następujących wartości.

Uwaga / Notatka

O ile nie określono inaczej, jest zwracana, NULL gdy właściwość nie jest prawidłową nazwą właściwości, identyfikator nie jest prawidłowym identyfikatorem obiektu, identyfikator jest nieobsługiwanym typem obiektu dla określonej właściwości lub obiekt wywołujący nie ma uprawnień do wyświetlania metadanych obiektu.

Nazwa właściwości Typ obiektu Zwrócony opis i wartości
CnstIsClustKey Ograniczenie PRIMARY KEY ograniczenie z indeksem klastrowanym.

1 = prawda

0 = Fałsz
CnstIsColumn Ograniczenie CHECK, lub DEFAULTFOREIGN KEY ograniczenie w jednej kolumnie.

1 = prawda

0 = Fałsz
CnstIsDeleteCascade Ograniczenie FOREIGN KEY ograniczenie z opcją ON DELETE CASCADE .

1 = prawda

0 = Fałsz
CnstIsDisabled Ograniczenie Wyłączone ograniczenie.

1 = prawda

0 = Fałsz
CnstIsNonclustKey Ograniczenie PRIMARY KEY lub UNIQUE ograniczenie z indeksem nieklastrowanym.

1 = prawda

0 = Fałsz
CnstIsNotRepl Ograniczenie Ograniczenie jest definiowane przy użyciu NOT FOR REPLICATION słów kluczowych.

1 = prawda

0 = Fałsz
CnstIsNotTrusted Ograniczenie Ograniczenie zostało włączone bez sprawdzania istniejących wierszy; w związku z tym ograniczenie może nie być przechowywane dla wszystkich wierszy.

1 = prawda

0 = Fałsz
CnstIsUpdateCascade Ograniczenie FOREIGN KEY ograniczenie z opcją ON UPDATE CASCADE .

1 = prawda

0 = Fałsz
ExecIsAfterTrigger Wyzwalacz AFTER spust.

1 = prawda

0 = Fałsz
ExecIsAnsiNullsOn funkcja Transact-SQL, procedura Transact-SQL, wyzwalacz Transact-SQL, widok ANSI_NULLS Ustawienie w czasie tworzenia.

1 = prawda

0 = Fałsz
ExecIsDeleteTrigger Wyzwalacz DELETE spust.

1 = prawda

0 = Fałsz
ExecIsFirstDeleteTrigger Wyzwalacz Pierwszy wyzwalacz został wyzwolony, gdy DELETE element jest wykonywany względem tabeli.

1 = prawda

0 = Fałsz
ExecIsFirstInsertTrigger Wyzwalacz Pierwszy wyzwalacz został wyzwolony, gdy element INSERT jest wykonywany względem tabeli.

1 = prawda

0 = Fałsz
ExecIsFirstUpdateTrigger Wyzwalacz Pierwszy wyzwalacz został wyzwolony, gdy element UPDATE jest wykonywany względem tabeli.

1 = prawda

0 = Fałsz
ExecIsInsertTrigger Wyzwalacz INSERT spust.

1 = prawda

0 = Fałsz
ExecIsInsteadOfTrigger Wyzwalacz INSTEAD OF spust.

1 = prawda

0 = Fałsz
ExecIsLastDeleteTrigger Wyzwalacz Ostatni wyzwalacz został wyzwolony, gdy element DELETE jest wykonywany względem tabeli.

1 = prawda

0 = Fałsz
ExecIsLastInsertTrigger Wyzwalacz Ostatni wyzwalacz został wyzwolony po wykonaniu elementu INSERT względem tabeli.

1 = prawda

0 = Fałsz
ExecIsLastUpdateTrigger Wyzwalacz Ostatni wyzwalacz został wyzwolony po wykonaniu elementu UPDATE względem tabeli.

1 = prawda

0 = Fałsz
ExecIsQuotedIdentOn funkcja Transact-SQL, procedura Transact-SQL, wyzwalacz Transact-SQL, widok QUOTED_IDENTIFIER Ustawienie w czasie tworzenia.

1 = prawda

0 = Fałsz
ExecIsStartup Procedure Procedura uruchamiania.

1 = prawda

0 = Fałsz
ExecIsTriggerDisabled Wyzwalacz Wyłączony wyzwalacz.

1 = prawda

0 = Fałsz
ExecIsTriggerNotForRepl Wyzwalacz Wyzwalacz zdefiniowany jako NOT FOR REPLICATION.

1 = prawda

0 = Fałsz
ExecIsUpdateTrigger Wyzwalacz UPDATE spust.

1 = prawda

0 = Fałsz
ExecIsWithNativeCompilation procedura Transact-SQL Dotyczy: SQL Server 2014 (12.x) i nowsze wersje.

Procedura jest natywnie kompilowana.

1 = prawda

0 = Fałsz

Podstawowy typ danych: int
HasAfterTrigger Tabela lub widok W tabeli lub widoku jest wyzwalacz AFTER .

1 = prawda

0 = Fałsz
HasDeleteTrigger Tabela lub widok W tabeli lub widoku jest wyzwalacz DELETE .

1 = prawda

0 = Fałsz
HasInsertTrigger Tabela lub widok W tabeli lub widoku jest wyzwalacz INSERT .

1 = prawda

0 = Fałsz
HasInsteadOfTrigger Tabela lub widok W tabeli lub widoku jest wyzwalacz INSTEAD OF .

1 = prawda

0 = Fałsz
HasUpdateTrigger Tabela lub widok W tabeli lub widoku jest wyzwalacz UPDATE .

1 = prawda

0 = Fałsz
IsAnsiNullsOn funkcja Transact-SQL, procedura Transact-SQL, tabela, wyzwalacz Transact-SQL, widok Określa, że ANSI NULLS ustawienie opcji dla tabeli to ON. Gdy ANSI NULLS wartość to ON, wszystkie porównania względem NULL wartości są obliczane na wartość UNKNOWN. To ustawienie dotyczy wszystkich wyrażeń w definicji tabeli, w tym kolumn obliczeniowych i ograniczeń, o ile tabela istnieje.

1 = prawda

0 = Fałsz
IsCheckCnst Dowolny obiekt o zakresie schematu CHECK ograniczenie.

1 = prawda

0 = Fałsz
IsConstraint Dowolny obiekt o zakresie schematu Jest jedną kolumną CHECK, DEFAULTlub FOREIGN KEY ograniczeniem w kolumnie lub tabeli.

1 = prawda

0 = Fałsz
IsDefault Dowolny obiekt o zakresie schematu Dotyczy: SQL Server 2008 (10.0.x) i nowsze wersje.

Powiązana wartość domyślna.

1 = prawda

0 = Fałsz
IsDefaultCnst Dowolny obiekt o zakresie schematu DEFAULT ograniczenie.

1 = prawda

0 = Fałsz
IsDeterministic Funkcja lub widok Właściwość determinizmu funkcji lub widoku.

1 = Deterministyczne

0 = nie deterministyczne
IsEncrypted funkcja Transact-SQL, procedura Transact-SQL, tabela, wyzwalacz Transact-SQL, widok Wskazuje, że oryginalny tekst instrukcji modułu został przekonwertowany na zaciemniony format. Dane wyjściowe zaciemnienia nie są widoczne bezpośrednio w żadnym z widoków wykazu w programie SQL Server 2005 (9.x). Użytkownicy bez dostępu do tabel systemowych lub plików bazy danych nie mogą pobrać zaciemnionego tekstu. Tekst jest jednak dostępny dla użytkowników, którzy mogą uzyskiwać dostęp do tabel systemowych za pośrednictwem połączenia diagnostycznego dla administratorów bazy danych lub bezpośrednio uzyskiwać dostęp do plików bazy danych. Ponadto użytkownicy, którzy mogą dołączyć debuger do procesu serwera, mogą pobrać oryginalną procedurę z pamięci w czasie wykonywania.

1 = Zaszyfrowane

0 = Niezaszyfrowane

Podstawowy typ danych: int
IsExecuted Dowolny obiekt o zakresie schematu Obiekt można wykonać (widok, procedura, funkcja lub wyzwalacz).

1 = prawda

0 = Fałsz
IsExtendedProc Dowolny obiekt o zakresie schematu Procedura rozszerzona.

1 = prawda

0 = Fałsz
IsForeignKey Dowolny obiekt o zakresie schematu FOREIGN KEY ograniczenie.

1 = prawda

0 = Fałsz
IsIndexed Tabela lub widok Tabela lub widok z indeksem.

1 = prawda

0 = Fałsz
IsIndexable Tabela lub widok Tabela lub widok, w którym można utworzyć indeks.

1 = prawda

0 = Fałsz
IsInlineFunction Funkcja Funkcja śródliniowa.

1 = Funkcja śródliniowa

0 = Funkcja nie śródliniowa
IsMSShipped Dowolny obiekt o zakresie schematu Obiekt utworzony podczas instalacji programu SQL Server.

1 = prawda

0 = Fałsz
IsPrimaryKey Dowolny obiekt o zakresie schematu PRIMARY KEY ograniczenie.

1 = prawda

0 = Fałsz

NULL = Nie jest prawidłowa funkcja lub identyfikator obiektu.
IsProcedure Dowolny obiekt o zakresie schematu Procedura.

1 = prawda

0 = Fałsz
IsQuotedIdentOn Transact-SQL funkcja, procedura Transact-SQL, tabela, wyzwalacz Transact-SQL, widok, CHECK ograniczenie, DEFAULT definicja Określa, że ustawienie identyfikatora cytowanego dla obiektu to ON. Oznacza to, że identyfikatory ogranicznika podwójnego cudzysłowu we wszystkich wyrażeniach zaangażowanych w definicję obiektu.

1 = ON

0 = OFF
IsQueue Dowolny obiekt o zakresie schematu Kolejka brokera usług

1 = prawda

0 = Fałsz
IsReplProc Dowolny obiekt o zakresie schematu Procedura replikacji.

1 = prawda

0 = Fałsz
IsRule Dowolny obiekt o zakresie schematu Powiązana reguła.

1 = prawda

0 = Fałsz
IsScalarFunction Funkcja Funkcja skalarna.

1 = funkcja skalarna

0 = Funkcja nieskalowana
IsSchemaBound Funkcja lub widok Funkcja powiązana schematu lub widok utworzony przy użyciu polecenia SCHEMABINDING.

1 = powiązanie schematu

0 = nie jest powiązana schematem.
IsSystemTable Tabela Tabela systemowa.

1 = prawda

0 = Fałsz
IsSystemVerified Object Program SQL Server może zweryfikować właściwości determinizmu i dokładności obiektu.

1 = prawda

0 = Fałsz
IsTable Tabela Stół.

1 = prawda

0 = Fałsz
IsTableFunction Funkcja Funkcja wartościowa tabeli.

1 = funkcja wartości tabeli

0 = Funkcja niezwarta w tabeli
IsTrigger Dowolny obiekt o zakresie schematu Spust.

1 = prawda

0 = Fałsz
IsUniqueCnst Dowolny obiekt o zakresie schematu UNIQUE ograniczenie.

1 = prawda

0 = Fałsz
IsUserTable Tabela Tabela zdefiniowana przez użytkownika.

1 = prawda

0 = Fałsz
IsView View Widok.

1 = prawda

0 = Fałsz
OwnerId Dowolny obiekt o zakresie schematu Właściciel obiektu.

Nuta: Właściciel schematu nie musi być właścicielem obiektu. Na przykład obiekty podrzędne (te, w których parent_object_id mają wartość inną niż null), zawsze będą zwracać ten sam identyfikator właściciela co element nadrzędny.

Non-null = identyfikator użytkownika bazy danych właściciela obiektu.
SchemaId Dowolny obiekt o zakresie schematu Identyfikator schematu, do którego należy obiekt.
TableDeleteTrigger Tabela Tabela ma DELETE wyzwalacz.

>1 = identyfikator pierwszego wyzwalacza o określonym typie.
TableDeleteTriggerCount Tabela Tabela zawiera określoną liczbę DELETE wyzwalaczy.

>0 = liczba DELETE wyzwalaczy.
TableFullTextMergeStatus Tabela Dotyczy: SQL Server 2008 (10.0.x) i nowsze wersje.

Czy tabela, która ma indeks pełnotekstowy, który jest obecnie scalony.

0 = Tabela nie ma indeksu pełnotekstowego lub indeks pełnotekstowy nie jest scalony.

1 = Indeks pełnotekstowy jest scalony.
TableFullTextBackgroundUpdateIndexOn Tabela Dotyczy: SQL Server 2008 (10.0.x) i nowsze wersje.

Tabela ma włączony indeks aktualizacji tła pełnotekstowego (automatyczne śledzenie zmian).

1 = PRAWDZIWA

0 = FAŁSZ
TableFulltextCatalogId Tabela Dotyczy: SQL Server 2008 (10.0.x) i nowsze wersje.

Identyfikator wykazu pełnotekstowego, w którym znajdują się dane indeksu pełnotekstowego dla tabeli.

Nonzero = identyfikator wykazu pełnotekstowego skojarzony z unikatowym indeksem, który identyfikuje wiersze w tabeli indeksowanej pełnotekstowo.

0 = Tabela nie ma indeksu pełnotekstowego.
TableFulltextChangeTrackingOn Tabela Dotyczy: SQL Server 2008 (10.0.x) i nowsze wersje.

Tabela ma włączone śledzenie zmian pełnotekstowych.

1 = PRAWDZIWA

0 = FAŁSZ
TableFulltextDocsProcessed Tabela Dotyczy: SQL Server 2008 (10.0.x) i nowsze wersje.

Liczba wierszy przetworzonych od początku indeksowania pełnotekstowego. W tabeli indeksowanej na potrzeby wyszukiwania pełnotekstowego wszystkie kolumny jednego wiersza są traktowane jako część jednego dokumentu do indeksowania.

0 = Nie ukończono aktywnego przeszukiwania ani indeksowania pełnotekstowego.

> 0 = jeden z następujących (A lub B): A) Liczba dokumentów przetwarzanych przez operacje wstawiania lub aktualizacji od początku pełnej, przyrostowej lub ręcznej populacji śledzenia zmian. B) Liczba wierszy przetworzonych przez operacje wstawiania lub aktualizacji od czasu włączenia śledzenia zmian z włączoną populacją indeksu aktualizacji w tle, zmieniono schemat indeksu pełnotekstowego, ponownie skompilowano wykaz pełnotekstowy lub ponownie uruchomiono wystąpienie programu SQL Server.

NULL = Tabela nie ma indeksu pełnotekstowego.

Ta właściwość nie monitoruje ani nie zlicza usuniętych wierszy.
TableFulltextFailCount Tabela Dotyczy: SQL Server 2008 (10.0.x) i nowsze wersje.

Liczba wierszy Full-Text wyszukiwania nie indeksowała.

0 = Ukończono populację.

> 0 = jeden z następujących (A lub B): A) Liczba dokumentów, które nie zostały indeksowane od początku pełnej, przyrostowej i ręcznej populacji śledzenia zmian aktualizacji. B) W przypadku śledzenia zmian z indeksem aktualizacji w tle liczba wierszy, które nie zostały indeksowane od początku populacji, lub ponowne uruchomienie populacji. Może to być spowodowane zmianą schematu, ponowną kompilacją wykazu, ponownym uruchomieniem serwera itd.

NULL = Tabela nie ma indeksu pełnotekstowego.
TableFulltextItemCount Tabela Dotyczy: SQL Server 2008 (10.0.x) i nowsze wersje.

Liczba wierszy, które zostały pomyślnie indeksowane pełnotekstowo.
TableFulltextKeyColumn Tabela Dotyczy: SQL Server 2008 (10.0.x) i nowsze wersje.

Identyfikator kolumny skojarzonej z unikatowym indeksem z jedną kolumną, który uczestniczy w definicji indeksu pełnotekstowego.

0 = Tabela nie ma indeksu pełnotekstowego.
TableFulltextPendingChanges Tabela Dotyczy: SQL Server 2008 (10.0.x) i nowsze wersje.

Liczba oczekujących wpisów śledzenia zmian do przetworzenia.

0 = śledzenie zmian nie jest włączone.

NULL = Tabela nie ma indeksu pełnotekstowego.
TableFulltextPopulateStatus Tabela Dotyczy: SQL Server 2008 (10.0.x) i nowsze wersje.

0 = bezczynność.

1 = Pełna populacja jest w toku.

2 = Populacja przyrostowa jest w toku.

3 = Propagacja śledzonych zmian jest w toku.

4 = Indeks aktualizacji w tle jest w toku, na przykład śledzenie autochange.

5 = indeksowanie pełnotekstowe jest ograniczane lub wstrzymane.
TableHasActiveFulltextIndex Tabela Dotyczy: SQL Server 2008 (10.0.x) i nowsze wersje.

Tabela ma aktywny indeks pełnotekstowy.

1 = prawda

0 = Fałsz
TableHasCheckCnst Tabela Tabela ma CHECK ograniczenie.

1 = prawda

0 = Fałsz
TableHasClustIndex Tabela Tabela ma indeks klastrowany.

1 = prawda

0 = Fałsz
TableHasDefaultCnst Tabela Tabela ma DEFAULT ograniczenie.

1 = prawda

0 = Fałsz
TableHasDeleteTrigger Tabela Tabela ma DELETE wyzwalacz.

1 = prawda

0 = Fałsz
TableHasForeignKey Tabela Tabela ma FOREIGN KEY ograniczenie.

1 = prawda

0 = Fałsz
TableHasForeignRef Tabela Tabela jest przywoływane przez FOREIGN KEY ograniczenie.

1 = prawda

0 = Fałsz
TableHasIdentity Tabela Tabela ma kolumnę tożsamości.

1 = prawda

0 = Fałsz
TableHasIndex Tabela Tabela ma indeks dowolnego typu.

1 = prawda

0 = Fałsz
TableHasInsertTrigger Tabela Obiekt ma INSERT wyzwalacz.

1 = prawda

0 = Fałsz
TableHasNonclustIndex Tabela Tabela ma indeks nieklastrowany.

1 = prawda

0 = Fałsz
TableHasPrimaryKey Tabela Tabela ma klucz podstawowy.

1 = prawda

0 = Fałsz
TableHasRowGuidCol Tabela Tabela zawiera ROWGUIDCOL kolumnę uniqueidentifier .

1 = prawda

0 = Fałsz
TableHasTextImage Tabela Tabela zawiera kolumnę tekstową, ntekstową lub obrazową .

1 = prawda

0 = Fałsz
TableHasTimestamp Tabela Tabela zawiera kolumnę znacznika czasu .

1 = prawda

0 = Fałsz
TableHasUniqueCnst Tabela Tabela ma UNIQUE ograniczenie.

1 = prawda

0 = Fałsz
TableHasUpdateTrigger Tabela Obiekt ma UPDATE wyzwalacz.

1 = prawda

0 = Fałsz
TableHasVarDecimalStorageFormat Tabela Tabela jest włączona dla formatu magazynu vardecimal .

1 = prawda

0 = Fałsz
TableInsertTrigger Tabela Tabela ma INSERT wyzwalacz.

>1 = identyfikator pierwszego wyzwalacza o określonym typie.
TableInsertTriggerCount Tabela Tabela zawiera określoną liczbę INSERT wyzwalaczy.

>0 = liczba INSERT wyzwalaczy.
TableIsFake Tabela Tabela nie jest prawdziwa. Jest on zmaterializowany wewnętrznie na żądanie przez aparat bazy danych programu SQL Server.

1 = prawda

0 = Fałsz
TableIsLockedOnBulkLoad Tabela Tabela jest zablokowana z powodu narzędzia bcp lub BULK INSERT zadania.

1 = prawda

0 = Fałsz
TableIsMemoryOptimized Tabela Dotyczy: SQL Server 2014 (12.x) i nowsze wersje.

Tabela jest zoptymalizowana pod kątem pamięci

1 = prawda

0 = Fałsz

Podstawowy typ danych: int

Aby uzyskać więcej informacji, zobacz In-Memory OMÓWIENIE OLTP i scenariusze użycia.
TableIsPinned Tabela Tabela jest przypięta do pamięci podręcznej danych.

0 = Fałsz

Ta funkcja nie jest obsługiwana w programie SQL Server 2005 (9.x) i nowszych wersjach.
TableTextInRowLimit Tabela Maksymalna liczba bajtów dozwolonych dla tekstu w wierszu.

0, jeśli nie ustawiono tekstu w wierszu.
TableUpdateTrigger Tabela Tabela ma UPDATE wyzwalacz.

> 1 = identyfikator pierwszego wyzwalacza o określonym typie.
TableUpdateTriggerCount Tabela Tabela zawiera określoną liczbę UPDATE wyzwalaczy.

> 0 = liczba UPDATE wyzwalaczy.
TableHasColumnSet Tabela Tabela ma zestaw kolumn.

0 = Fałsz

1 = prawda

Aby uzyskać więcej informacji, zobacz Używanie zestawów kolumn.
TableTemporalType Tabela Dotyczy: SQL Server 2016 (13.x) i nowsze wersje.

Określa typ tabeli.

0 = tabela nieprzestrzeniowa

1 = tabela historii dla tabeli z wersją systemową

2 = tabela czasowa w wersji systemowej

Typy zwracane

int

Exceptions

Zwraca błąd NULL lub jeśli obiekt wywołujący nie ma uprawnień do wyświetlania obiektu.

Permissions

Użytkownik może wyświetlać tylko metadane zabezpieczanych, które użytkownik jest właścicielem lub którym użytkownik udzielił uprawnień. Oznacza to, że funkcje wbudowane emitujące metadane, takie jak OBJECTPROPERTY zwracane NULL , jeśli użytkownik nie ma żadnych uprawnień do obiektu. Aby uzyskać więcej informacji, zobacz Konfiguracja widoczności metadanych.

Uwagi

Aparat bazy danych zakłada, że object_id znajduje się w bieżącym kontekście bazy danych. Zapytanie odwołujące się do object_id w innej bazie danych zwraca NULL lub niepoprawne wyniki. Na przykład w poniższym zapytaniu bieżący kontekst bazy danych to master baza danych. Aparat bazy danych próbuje zwrócić wartość właściwości określonej object_id w tej bazie danych zamiast bazy danych określonej w zapytaniu. Zapytanie zwraca nieprawidłowe wyniki, ponieważ widok vEmployee nie znajduje się w master bazie danych.

USE master;
GO
SELECT OBJECTPROPERTY(OBJECT_ID(N'AdventureWorks2022.HumanResources.vEmployee'), 'IsView');
GO

OBJECTPROPERTY(view_id, 'IsIndexable') może zużywać znaczne zasoby komputera, ponieważ ocena właściwości IsIndexable wymaga analizowania definicji widoku, normalizacji i częściowej optymalizacji. Mimo że właściwość IsIndexable identyfikuje tabele lub widoki, które można indeksować, rzeczywiste tworzenie indeksu nadal może zakończyć się niepowodzeniem, jeśli niektóre wymagania dotyczące klucza indeksu nie zostaną spełnione. Aby uzyskać więcej informacji, zobacz CREATE INDEX (Transact-SQL).

OBJECTPROPERTY(table_id, 'TableHasActiveFulltextIndex') Zwraca wartość 1 (true), gdy co najmniej jedna kolumna tabeli jest dodawana do indeksowania. Indeksowanie pełnotekstowe staje się aktywne dla populacji zaraz po dodaniu pierwszej kolumny do indeksowania.

Po utworzeniu QUOTED IDENTIFIER tabeli opcja jest zawsze przechowywana jako ON w metadanych tabeli, nawet jeśli opcja jest ustawiona na OFF wartość podczas tworzenia tabeli. OBJECTPROPERTY(table_id, 'IsQuotedIdentOn') W związku z tym zawsze zwraca wartość 1 (true).

Przykłady

A. Sprawdzanie, czy obiekt jest tabelą

Poniższy przykład sprawdza, czy UnitMeasure tabela znajduje się w AdventureWorks2025 bazie danych.

USE AdventureWorks2022;
GO
IF OBJECTPROPERTY (OBJECT_ID(N'Production.UnitMeasure'),'ISTABLE') = 1
   PRINT 'UnitMeasure is a table.'
ELSE IF OBJECTPROPERTY (OBJECT_ID(N'Production.UnitMeasure'),'ISTABLE') = 0
   PRINT 'UnitMeasure is not a table.'
ELSE IF OBJECTPROPERTY (OBJECT_ID(N'Production.UnitMeasure'),'ISTABLE') IS NULL
   PRINT 'ERROR: UnitMeasure is not a valid object.';
GO

B. Sprawdź, czy funkcja zdefiniowana przez użytkownika o wartości skalarnej jest deterministyczna

Poniższy przykład sprawdza, czy zdefiniowana przez użytkownika funkcja ufnGetProductDealerPriceskalarna , która zwraca wartość pieniężną , jest deterministyczna.

USE AdventureWorks2022;
GO
SELECT OBJECTPROPERTY(OBJECT_ID('dbo.ufnGetProductDealerPrice'), 'IsDeterministic');
GO

Zestaw wyników pokazuje, że ufnGetProductDealerPrice nie jest funkcją deterministyczną.

-----
0

C: Znajdowanie tabel należących do określonego schematu

Poniższy przykład zwraca wszystkie tabele w schemacie dbo .

-- Uses AdventureWorks

SELECT schema_name(o.schema_id), o.name, o.object_id, o.type_desc
FROM sys.objects AS o
WHERE OBJECTPROPERTY(o.object_id, N'SchemaId') = SCHEMA_ID(N'dbo')
ORDER BY o.type_desc, o.name;
GO

Przykłady: Azure Synapse Analytics and Analytics Platform System (PDW)

D: Sprawdzanie, czy obiekt jest tabelą

Poniższy przykład sprawdza, czy dbo.DimReseller tabela znajduje się w bazie danych AdventureWorksPDW2022 .

-- Uses AdventureWorks

IF OBJECTPROPERTY (OBJECT_ID(N'dbo.DimReseller'),'ISTABLE') = 1
   SELECT 'DimReseller is a table.'
ELSE
   SELECT 'DimReseller is not a table.';
GO