OBJECTPROPERTYEX (Transact-SQL)

Si applica a:SQL Server database SQL di Azure Istanza gestita di SQL di Azure Azure Synapse Analytics AnalyticsPlatform System (PDW)SQL analytics endpoint in Microsoft FabricWarehouse in Microsoft Fabric

Restituisce informazioni sugli oggetti con ambito schema nel database corrente. Per un elenco di questi oggetti, vedere sys.objects (Transact-SQL). La funzione OBJECTPROPERTYEX non può essere utilizzata per oggetti non definiti a livello di ambito dello schema, ad esempio notifiche degli eventi e trigger DDL (Data Definition Language).

Convenzioni di sintassi Transact-SQL

Sintassi

OBJECTPROPERTYEX ( id , property )  

Nota

Per visualizzare la sintassi Transact-SQL per SQL Server 2014 (12.x) e versioni precedenti, vedere la documentazione delle versioni precedenti.

Argomenti

id
Espressione che rappresenta l'ID dell'oggetto nel database corrente. id è di tipo int e si presuppone che sia un oggetto con ambito schema nel contesto di database corrente.

proprietà
Espressione che contiene le informazioni da restituire per l'oggetto specificato dall'ID. Il tipo restituito è sql_variant. Nella tabella seguente viene indicato il tipo di dati di base per ogni valore di questo argomento.

Nota

Se non specificato diversamente, viene restituito NULL quando property non è un nome di proprietà valido, id non è un ID di oggetto valido, id è un tipo di oggetto non supportato per la property specificata oppure il chiamante non dispone dell'autorizzazione necessaria per visualizzare i metadati dell'oggetto.

Nome della proprietà Object type Descrizione e valori restituiti
BaseType Qualsiasi oggetto con ambito schema Identifica il tipo di base dell'oggetto. Quando l'oggetto specificato è di tipo SYNONYM, viene restituito il tipo di base dell'oggetto sottostante.

Valore diverso da Null = Tipo di oggetto

Tipo di dati di base: char(2)
CnstIsClustKey Vincolo Vincolo PRIMARY KEY con un indice cluster.

1 = True

0 = False

Tipo di dati di base: int
CnstIsColumn Vincolo Vincolo CHECK, DEFAULT o FOREIGN KEY per una singola colonna.

1 = True

0 = False

Tipo di dati di base: int
CnstIsDeleteCascade Vincolo Vincolo FOREIGN KEY con l'opzione ON DELETE CASCADE.

1 = True

0 = False

Tipo di dati di base: int
CnstIsDisabled Vincolo Vincolo disabilitato.

1 = True

0 = False

Tipo di dati di base: int
CnstIsNonclustKey Vincolo Vincolo PRIMARY KEY con un indice non cluster.

1 = True

0 = False

Tipo di dati di base: int
CnstIsNotRepl Vincolo Vincolo definito con le parole chiave NOT FOR REPLICATION.

1 = True

0 = False

Tipo di dati di base: int
CnstIsNotTrusted Vincolo Vincolo abilitato senza eseguire una verifica delle righe esistenti. Il vincolo pertanto potrebbe non essere valido per tutte le righe.

1 = True

0 = False

Tipo di dati di base: int
CnstIsUpdateCascade Vincolo Vincolo FOREIGN KEY con l'opzione ON UPDATE CASCADE.

1 = True

0 = False

Tipo di dati di base: int
ExecIsAfterTrigger Trigger Trigger AFTER.

1 = True

0 = False

Tipo di dati di base: int
ExecIsAnsiNullsOn Funzione Transact-SQL, procedura Transact-SQL, trigger Transact-SQL, vista Impostazione di ANSI_NULLS in fase di creazione.

1 = True

0 = False

Tipo di dati di base: int
ExecIsDeleteTrigger Trigger Trigger DELETE.

1 = True

0 = False

Tipo di dati di base: int
ExecIsFirstDeleteTrigger Trigger Primo trigger attivato quando viene eseguita un'istruzione DELETE sulla tabella.

1 = True

0 = False

Tipo di dati di base: int
ExecIsFirstInsertTrigger Trigger Primo trigger attivato quando viene eseguita un'istruzione INSERT sulla tabella.

1 = True

0 = False

Tipo di dati di base: int
ExecIsFirstUpdateTrigger Trigger Primo trigger attivato quando viene eseguita un'istruzione UPDATE sulla tabella.

1 = True

0 = False

Tipo di dati di base: int
ExecIsInsertTrigger Trigger Trigger INSERT.

1 = True

0 = False

Tipo di dati di base: int
ExecIsInsteadOfTrigger Trigger Trigger INSTEAD OF.

1 = True

0 = False

Tipo di dati di base: int
ExecIsLastDeleteTrigger Trigger Ultimo trigger attivato quando viene eseguita un'istruzione DELETE sulla tabella.

1 = True

0 = False

Tipo di dati di base: int
ExecIsLastInsertTrigger Trigger Ultimo trigger attivato quando viene eseguita un'istruzione INSERT sulla tabella.

1 = True

0 = False

Tipo di dati di base: int
ExecIsLastUpdateTrigger Trigger Ultimo trigger attivato quando viene eseguita un'istruzione UPDATE sulla tabella.

1 = True

0 = False

Tipo di dati di base: int
ExecIsQuotedIdentOn Funzione Transact-SQL, procedura Transact-SQL, trigger Transact-SQL, vista Impostazione di QUOTED_IDENTIFIER in fase di creazione.

1 = True

0 = False

Tipo di dati di base: int
ExecIsStartup Procedura Procedura di avvio.

1 = True

0 = False

Tipo di dati di base: int
ExecIsTriggerDisabled Trigger Trigger disabilitato.

1 = True

0 = False

Tipo di dati di base: int
ExecIsTriggerNotForRepl Trigger Trigger definito come NOT FOR REPLICATION.

1 = True

0 = False

Tipo di dati di base: int
ExecIsUpdateTrigger Trigger Trigger UPDATE.

1 = True

0 = False

Tipo di dati di base: int
ExecIsWithNativeCompilation Procedura Transact-SQL Si applica a: SQL Server 2014 (12.x) e versioni successive.

La stored procedure è compilata in modo nativo.

1 = True

0 = False

Tipo di dati di base: int
HasAfterTrigger Tabella, vista Tabella o vista che include un trigger AFTER.

1 = True

0 = False

Tipo di dati di base: int
HasDeleteTrigger Tabella, vista Tabella o vista che include un trigger DELETE.

1 = True

0 = False

Tipo di dati di base: int
HasInsertTrigger Tabella, vista Tabella o vista che include un trigger INSERT.

1 = True

0 = False

Tipo di dati di base: int
HasInsteadOfTrigger Tabella, vista Tabella o vista che include un trigger INSTEAD OF.

1 = True

0 = False

Tipo di dati di base: int
HasUpdateTrigger Tabella, vista Tabella o vista che include un trigger UPDATE.

1 = True

0 = False

Tipo di dati di base: int
IsAnsiNullsOn Funzione Transact-SQL, procedura Transact-SQL, tabella, trigger Transact-SQL, vista L'opzione ANSI NULLS per la tabella è impostata su ON, il che significa che tutti i confronti di un valore Null restituiscono UNKNOWN. Questa impostazione viene applicata a tutte le espressioni nella definizione di tabella, inclusi i vincoli e le colonne calcolate, per tutto il tempo in cui la tabella è disponibile.

1 = True

0 = False

Tipo di dati di base: int
IsCheckCnst Qualsiasi oggetto con ambito schema Vincolo CHECK.

1 = True

0 = False

Tipo di dati di base: int
IsConstraint Qualsiasi oggetto con ambito schema Vincolo.

1 = True

0 = False

Tipo di dati di base: int
IsDefault Qualsiasi oggetto con ambito schema Si applica a: SQL Server 2008 (10.0.x) e versioni successive.

Valore predefinito associato.

1 = True

0 = False

Tipo di dati di base: int
IsDefaultCnst Qualsiasi oggetto con ambito schema Vincolo DEFAULT.

1 = True

0 = False

Tipo di dati di base: int
IsDeterministic Funzioni con valori scalari e di tabella, vista Proprietà deterministica della funzione o della vista.

1 = Deterministica

0 = Non deterministica

Tipo di dati di base: int
IsEncrypted Funzione Transact-SQL, procedura Transact-SQL, tabella, trigger Transact-SQL, vista Indica che il testo originale dell'istruzione del modulo è stato convertito in un formato offuscato. In SQL Server 2005 (9.x) l'output in formato offuscato non è visibile direttamente in alcuna vista del catalogo. Gli utenti che non hanno accesso a tabelle di sistema o file del database non possono recuperare il testo offuscato. Il testo è tuttavia disponibile per gli utenti con privilegi di accesso a tabelle di sistema attraverso la porta DAC oppure con privilegi di accesso diretto a file del database. Gli utenti in grado di collegare un debugger al processo del server possono inoltre recuperare la procedura originale dalla memoria in fase di esecuzione.

1 = Crittografato

0 = Non crittografato

Tipo di dati di base: int
IsExecuted Qualsiasi oggetto con ambito schema L'oggetto può essere eseguito (vista, procedura, funzione o trigger).

1 = True

0 = False

Tipo di dati di base: int
IsExtendedProc Qualsiasi oggetto con ambito schema Procedura estesa.

1 = True

0 = False

Tipo di dati di base: int
IsForeignKey Qualsiasi oggetto con ambito schema Vincolo FOREIGN KEY.

1 = True

0 = False

Tipo di dati di base: int
IsIndexed Tabella, vista Tabella o vista che include un indice.

1 = True

0 = False

Tipo di dati di base: int
IsIndexable Tabella, vista Tabella o vista per cui è possibile creare un indice.

1 = True

0 = False

Tipo di dati di base: int
IsInlineFunction Funzione Funzione inline.

1 = Funzione inline

0 = Funzione non inline

Tipo di dati di base: int
IsMSShipped Qualsiasi oggetto con ambito schema Oggetto creato durante l'installazione di SQL Server.

1 = True

0 = False

Tipo di dati di base: int
IsPrecise Colonna calcolata, funzione, tipo definito dall'utente, vista L'oggetto contiene un calcolo impreciso, ad esempio operazioni a virgola mobile.

1 = Preciso

0 = Impreciso

Tipo di dati di base: int
IsPrimaryKey Qualsiasi oggetto con ambito schema Vincolo PRIMARY KEY.

1 = True

0 = False

Tipo di dati di base: int
IsProcedure Qualsiasi oggetto con ambito schema Procedura.

1 = True

0 = False

Tipo di dati di base: int
IsQuotedIdentOn Vincolo CHECK, definizione predefinita, funzione Transact-SQL, procedura Transact-SQL, tabella, trigger Transact-SQL, vista L'opzione relativa all'utilizzo dell'identificatore tra virgolette per l'oggetto è impostata su ON, il che significa che gli identificatori sono racchiusi tra virgolette doppie in tutte le espressioni a cui viene fatto riferimento nella definizione dell'oggetto.

1 = True

0 = False

Tipo di dati di base: int
IsQueue Qualsiasi oggetto con ambito schema Coda di Service Broker.

1 = True

0 = False

Tipo di dati di base: int
IsReplProc Qualsiasi oggetto con ambito schema Procedura di replica.

1 = True

0 = False

Tipo di dati di base: int
IsRule Qualsiasi oggetto con ambito schema Regola associata.

1 = True

0 = False

Tipo di dati di base: int
IsScalarFunction Funzione Funzione con valori scalari.

1 = Funzione con valori scalari

0 = Funzione senza valori scalari

Tipo di dati di base: int
IsSchemaBound Funzione, procedura, vista Funzione o vista associata a schema creata con la clausola SCHEMABINDING.

1 = Associata a uno schema

0 = Non associata a schema

Tipo di dati di base: int
IsSystemTable Tabella Tabella di sistema.

1 = True

0 = False

Tipo di dati di base: int
IsSystemVerified Colonna calcolata, funzione, tipo definito dall'utente, vista Le proprietà di precisione e determinismo dell'oggetto possono essere verificate da SQL Server.

1 = True

0 = False

Tipo di dati di base: int
IsTable Tabella Tabella.

1 = True

0 = False

Tipo di dati di base: int
IsTableFunction Funzione Funzione con valori di tabella.

1 = Funzione con valori di tabella

0 = Funzione senza valori di tabella

Tipo di dati di base: int
IsTrigger Qualsiasi oggetto con ambito schema Trigger.

1 = True

0 = False

Tipo di dati di base: int
IsUniqueCnst Qualsiasi oggetto con ambito schema Vincolo UNIQUE.

1 = True

0 = False

Tipo di dati di base: int
IsUserTable Tabella Tabella definita dall'utente.

1 = True

0 = False

Tipo di dati di base: int
IsView Visualizzare Vista.

1 = True

0 = False

Tipo di dati di base: int
OwnerId Qualsiasi oggetto con ambito schema Proprietario dell'oggetto.

Nota: Il proprietario dello schema non deve necessariamente corrispondere al proprietario dell'oggetto. Ad esempio, gli oggetti figlio (per i quali il parametro parent_object_id è impostato su un valore diverso da Null) restituiscono sempre lo stesso ID di proprietario del padre.

Valore diverso da Null = ID utente del database del proprietario dell'oggetto.

NULL = Tipo di oggetto non supportato oppure ID di oggetto non valido.

Tipo di dati di base: int
SchemaId Qualsiasi oggetto con ambito schema ID dello schema associato all'oggetto.

Valore diverso da Null = ID dello schema dell'oggetto.

Tipo di dati di base: int
SystemDataAccess Funzione, vista L'oggetto accede a dati di sistema, cataloghi di sistema o tabelle di sistema virtuali nell'istanza locale di SQL Server.

0 = Nessuna

1 = Lettura

Tipo di dati di base: int
TableDeleteTrigger Tabella La tabella include un trigger DELETE.

>1 = ID del primo trigger del tipo specificato.

Tipo di dati di base: int
TableDeleteTriggerCount Tabella La tabella include il numero specificato di trigger DELETE.

Valore diverso da Null = Numero di trigger DELETE.

Tipo di dati di base: int
TableFullTextMergeStatus Tabella Si applica a: SQL Server 2008 (10.0.x) e versioni successive.

Indica se una tabella dispone di un indice full-text su cui è attualmente in corso un'operazione di unione.

0 = La tabella non dispone di un indice full-text o sull'indice full-text non è in corso un'operazione di unione.

1 = Sull'indice full-text è in corso un'operazione di unione.
TableFullTextBackgroundUpdateIndexOn Tabella Si applica a: SQL Server 2008 (10.0.x) e versioni successive.

Nella tabella è abilitato l'indice full-text ad aggiornamento in background (rilevamento automatico delle modifiche).

1 = TRUE

0 = FALSE

Tipo di dati di base: int
TableFulltextCatalogId Tabella Si applica a: SQL Server 2008 (10.0.x) e versioni successive.

ID del catalogo full-text contenente i dati dell'indice full-text per la tabella.

Valore diverso da zero = ID del catalogo full-text associato all'indice univoco che identifica le righe di una tabella con indicizzazione full-text.

0 = La tabella non include un indice full-text.

Tipo di dati di base: int
TableFullTextChangeTrackingOn Tabella Si applica a: SQL Server 2008 (10.0.x) e versioni successive.

Nella tabella è abilitato il rilevamento delle modifiche full-text.

1 = TRUE

0 = FALSE

Tipo di dati di base: int
TableFulltextDocsProcessed Tabella Si applica a: SQL Server 2008 (10.0.x) e versioni successive.

Numero di righe elaborate dopo l'avvio dell'indicizzazione full-text. In una tabella sottoposta a indicizzazione ai fini della ricerca full-text tutte le colonne di una riga vengono considerate come appartenenti a un unico documento da indicizzare.

0 = Nessuna ricerca per indicizzazione attiva oppure l'indicizzazione full-text è stata completata.

> 0 = Uno delle opzioni seguenti (A o B): A) Numero di documenti elaborati da operazioni di inserimento o aggiornamento dopo l'avvio del popolamento con rilevamento delle modifiche completo, incrementale o manuale; B) Numero di righe elaborate da operazioni di inserimento o aggiornamento dopo l'attivazione del rilevamento delle modifiche con popolamento dell'indice di aggiornamento in background, la modifica dello schema dell'indice full-text, la ricompilazione del catalogo full-text o il riavvio dell'istanza di SQL Server e così via.

NULL = La tabella non include un indice full-text.

Tipo di dati di base: int

Note Questa proprietà non monitora né conta le righe eliminate.
TableFulltextFailCount Tabella Si applica a: SQL Server 2008 (10.0.x) e versioni successive.

Numero di righe non indicizzate dalla ricerca full-text.

0 = Popolamento completato.

>0 = Una delle opzioni seguenti (A o B): A) Numero di documenti non indicizzati dopo l'avvio del popolamento di aggiornamento con rilevamento delle modifiche completo, incrementale e manuale; B) Per il rilevamento delle modifiche con aggiornamento indice in background, numero di righe non indicizzate dopo l'inizio del popolamento o il riavvio del popolamento. La mancata indicizzazione potrebbe essere dovuta a una modifica dello schema, alla ricompilazione del catalogo, al riavvio del server e così via.

NULL = La tabella non include un indice full-text.

Tipo di dati di base: int
TableFulltextItemCount Tabella Si applica a: SQL Server 2008 (10.0.x) e versioni successive.

Valore diverso da Null = Numero di righe per cui l'indicizzazione full-text ha avuto esito positivo.

NULL = La tabella non include un indice full-text.

Tipo di dati di base: int
TableFulltextKeyColumn Tabella Si applica a: SQL Server 2008 (10.0.x) e versioni successive.

ID della colonna associata all'indice univoco costituito da una sola colonna che fa parte della definizione di un indice full-text e di un indice semantico.

0 = La tabella non include un indice full-text.

Tipo di dati di base: int
TableFulltextPendingChanges Tabella Si applica a: SQL Server 2008 (10.0.x) e versioni successive.

Numero di voci in sospeso del rilevamento delle modifiche da elaborare.

0 = Il rilevamento delle modifiche non è abilitato.

NULL = La tabella non include un indice full-text.

Tipo di dati di base: int
TableFulltextPopulateStatus Tabella Si applica a: SQL Server 2008 (10.0.x) e versioni successive.

0 = Inattivo

1 = Popolamento completo in corso.

2 = Popolamento incrementale in corso.

3 = Propagazione delle modifiche rilevate in corso.

4 = Operazione in corso per l'indice ad aggiornamento in background, ad esempio il rilevamento automatico delle modifiche.

5 = Indicizzazione full-text rallentata o sospesa.

6 = Si è verificato un errore. Esaminare il registro di popolamento per i dettagli. Per altre informazioni, vedere la sezione Risoluzione di errori in un popolamento full-text (ricerca per indicizzazione) di Populare gli indici full-text.

Tipo di dati di base: int
TableFullTextSemanticExtraction Tabella Si applica a: SQL Server 2012 (11.x) e versioni successive.

La tabella è abilitata per l'indicizzazione semantica.

1 = True

0 = False

Tipo di dati di base: int
TableHasActiveFulltextIndex Tabella Si applica a: SQL Server 2008 (10.0.x) e versioni successive.

La tabella include un indice full-text attivo.

1 = True

0 = False

Tipo di dati di base: int
TableHasCheckCnst Tabella La tabella include un vincolo CHECK.

1 = True

0 = False

Tipo di dati di base: int
TableHasClustIndex Tabella La tabella include un indice cluster.

1 = True

0 = False

Tipo di dati di base: int
TableHasDefaultCnst Tabella La tabella include un vincolo DEFAULT.

1 = True

0 = False

Tipo di dati di base: int
TableHasDeleteTrigger Tabella La tabella include un trigger DELETE.

1 = True

0 = False

Tipo di dati di base: int
TableHasForeignKey Tabella La tabella include un vincolo FOREIGN KEY.

1 = True

0 = False

Tipo di dati di base: int
TableHasForeignRef Tabella Un vincolo FOREIGN KEY fa riferimento alla tabella.

1 = True

0 = False

Tipo di dati di base: int
TableHasIdentity Tabella La tabella include una colonna Identity.

1 = True

0 = False

Tipo di dati di base: int
TableHasIndex Tabella La tabella include un indice di qualsiasi tipo.

1 = True

0 = False

Tipo di dati di base: int
TableHasInsertTrigger Tabella L'oggetto include un trigger INSERT.

1 = True

0 = False

Tipo di dati di base: int
TableHasNonclustIndex Tabella La tabella include un indice non cluster.

1 = True

0 = False

Tipo di dati di base: int
TableHasPrimaryKey Tabella La tabella include una chiave primaria.

1 = True

0 = False

Tipo di dati di base: int
TableHasRowGuidCol Tabella La tabella include un ROWGUIDCOL per una colonna uniqueidentifier.

1 = True

0 = False

Tipo di dati di base: int
TableHasTextImage Tabella La tabella include una colonna text, ntext, o immagine.

1 = True

0 = False

Tipo di dati di base: int
TableHasTimestamp Tabella La tabella include una colonna timestamp.

1 = True

0 = False

Tipo di dati di base: int
TableHasUniqueCnst Tabella La tabella include un vincolo UNIQUE.

1 = True

0 = False

Tipo di dati di base: int
TableHasUpdateTrigger Tabella L'oggetto include un trigger UPDATE.

1 = True

0 = False

Tipo di dati di base: int
TableHasVarDecimalStorageFormat Tabella Tabella abilitata per il formato di archiviazione vardecimal.

1 = True

0 = False
TableInsertTrigger Tabella La tabella include un trigger INSERT.

>1 = ID del primo trigger del tipo specificato.

Tipo di dati di base: int
TableInsertTriggerCount Tabella La tabella include il numero specificato di trigger INSERT.

>0 = Numero di trigger INSERT.

Tipo di dati di base: int
TableIsFake Tabella La tabella non è reale, ma viene creata internamente su richiesta dal motore di database.

1 = True

0 = False

Tipo di dati di base: int
TableIsLockedOnBulkLoad Tabella La tabella è bloccata a causa di un processo bcp o BULK INSERT.

1 = True

0 = False

Tipo di dati di base: int
TableIsMemoryOptimized Tabella Si applica a: SQL Server 2014 (12.x) e versioni successive.

La tabella prevede l'ottimizzazione per la memoria

1 = True

0 = False

Tipo di dati di base: int

Per altre informazioni, vedere OLTP in memoria (ottimizzazione per la memoria).
TableIsPinned Tabella La tabella è bloccata per essere mantenuta nella cache dei dati.

0 = False

Questa funzionalità non è supportata in SQL Server 2005 (9.x) o versioni successive.
TableTextInRowLimit Tabella Per la tabella è stata impostata l'opzione text in row.

> 0 = Numero massimo di byte consentito per l'opzione Text in row.

0 = L'opzione Text in row non è impostata.

Tipo di dati di base: int
TableUpdateTrigger Tabella La tabella include un trigger UPDATE.

> 1 = ID del primo trigger del tipo specificato.

Tipo di dati di base: int
TableUpdateTriggerCount Tabella La tabella include il numero specificato di trigger UPDATE.

> 0 = Numero di trigger UPDATE.

Tipo di dati di base: int
UserDataAccess Funzione, vista L'oggetto accede ai dati utente (tabelle utente) nell'istanza locale di SQL Server.

1 = Lettura

0 = Nessuna

Tipo di dati di base: int
TableHasColumnSet Tabella Indica se la tabella include un set di colonne.

0 = False

1 = True

Per altre informazioni, vedere Usare set di colonne.
Cardinalità Tabella (definita dal sistema o dall'utente), vista o indice Si applica a: SQL Server 2012 (11.x) e versioni successive.

Numero di righe nell'oggetto specificato.
TableTemporalType Tabella Si applica a: SQL Server 2016 (13.x) e versioni successive.

Specifica il tipo di tabella.

0 = tabella non temporale

1 = tabella di cronologia per tabella con controllo delle versioni di sistema

2 = tabella temporale con controllo delle versioni di sistema

Tipi restituiti

sql_variant

Eccezioni

Restituisce NULL in caso di errore o se un chiamante non dispone dell'autorizzazione necessaria per visualizzare l'oggetto.

Un utente può visualizzare esclusivamente i metadati delle entità a sicurezza diretta di cui è proprietario o per cui ha ricevuto un'autorizzazione. Di conseguenza, le funzioni predefinite di creazione dei metadati come OBJECTPROPERTYEX possono restituire NULL se l'utente non dispone di alcuna autorizzazione per l'oggetto. Per altre informazioni, vedere Metadata Visibility Configuration.

Osservazioni:

Il motore di database presuppone che il valore object_id sia specificato nel contesto di database corrente. Una query in cui viene fatto riferimento a un object_id in un altro database restituisce NULL oppure risultati non corretti. Nella query seguente, ad esempio, il contesto di database corrente è il database master. Il motore di database tenterà di restituire il valore della proprietà relativo al valore object_id specificato in tale database anziché nel database specificato nella query. La query restituisce risultati non corretti perché la vista vEmployee non si trova nel database master.

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

OBJECTPROPERTYEX(view_id, 'IsIndexable') può richiedere una quantità elevata di memoria perché la valutazione della proprietà IsIndexable richiede l'analisi della definizione, normalizzazione e ottimizzazione parziale della vista. Sebbene la proprietà IsIndexable identifichi tabelle o viste che è possibile indicizzare, la creazione effettiva dell'indice può avere esito negativo se non vengono soddisfatti determinati requisiti riguardanti la chiave di indice. Per altre informazioni, vedere CREATE INDEX (Transact-SQL).

OBJECTPROPERTYEX (table_id, 'TableHasActiveFulltextIndex') restituisce il valore 1 (true) quando almeno una colonna di una tabella viene aggiunta per l'indicizzazione. L'indicizzazione full-text risulta attiva per il popolamento non appena viene aggiunta la prima colonna per l'indicizzazione.

Il set di risultati è soggetto ad alcune restrizioni riguardanti la visibilità dei metadati. Per altre informazioni, vedere Metadata Visibility Configuration.

Esempi

R. Ricerca del tipo di base di un oggetto

Nell'esempio seguente viene creato un oggetto SYNONYM MyEmployeeTable per la tabella Employee nel database AdventureWorks2022 e quindi viene restituito il tipo di base di SYNONYM.

USE AdventureWorks2022;  
GO  
CREATE SYNONYM MyEmployeeTable FOR HumanResources.Employee;  
GO  
SELECT OBJECTPROPERTYEX ( object_id(N'MyEmployeeTable'), N'BaseType')AS [Base Type];  
GO  

Nel set di risultati viene indicato che il tipo di base dell'oggetto sottostante, ovvero la tabella Employee, è una tabella utente.

Base Type 
--------  
U

B. Restituzione del valore di una proprietà

Nell'esempio seguente viene restituito il numero di trigger UPDATE per la tabella specificata.

USE AdventureWorks2022;  
GO  
SELECT OBJECTPROPERTYEX(OBJECT_ID(N'HumanResources.Employee'), N'TABLEUPDATETRIGGERCOUNT');  
GO  

C. Ricerca delle tabelle con vincolo FOREIGN KEY

Nell'esempio seguente viene utilizzata la proprietà TableHasForeignKey per restituire tutte le tabelle con vincolo FOREIGN KEY.

USE AdventureWorks2022;  
GO  
SELECT name, object_id, schema_id, type_desc  
FROM sys.objects   
WHERE OBJECTPROPERTYEX(object_id, N'TableHasForeignKey') = 1  
ORDER BY name;  
GO  

Esempi: Azure Synapse Analytics e Piattaforma di strumenti analitici (PDW)

D. Ricerca del tipo di base di un oggetto

Nell'esempio seguente viene restituito il tipo di base dell'oggetto dbo.DimReseller.

-- Uses AdventureWorks  
  
SELECT OBJECTPROPERTYEX ( object_id(N'dbo.DimReseller'), N'BaseType')AS BaseType;  

Nel set di risultati viene indicato che il tipo di base dell'oggetto sottostante, ovvero la tabella dbo.DimReseller, è una tabella utente.

BaseType   
--------   
U   

Vedi anche

CREATE SYNONYM (Transact-SQL)
Funzioni dei metadati (Transact-SQL)
OBJECT_DEFINITION (Transact-SQL)
OBJECT_ID (Transact-SQL)
OBJECT_NAME (Transact-SQL)
sys.objects (Transact-SQL)
ALTER AUTHORIZATION (Transact-SQL)
TYPEPROPERTY (Transact-SQL)