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
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 = ON0 = 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