Condividi tramite


CONSTRAINT_TABLE_USAGE (Transact-SQL)

Restituisce una riga per ogni tabella del database corrente per la quale è definito un vincolo. Questa vista dello schema restituisce informazioni sugli oggetti per i quali l'utente corrente dispone di autorizzazioni.

Per recuperare informazioni da queste viste, specificare il nome completo di INFORMATION_SCHEMA.view_name.

Nome colonna

Tipo di dati

Descrizione

TABLE_CATALOG

nvarchar(128)

Qualificatore della tabella.

TABLE_SCHEMA

nvarchar(128)

Nome dello schema che contiene la tabella.

Nota importanteImportante
Non utilizzare viste INFORMATION_SCHEMA per determinare lo schema di un oggetto. L'unica modalità affidabile per cercare lo schema di un oggetto consiste nell'eseguire una query sulla vista del catalogo sys.objects o sulla funzione OBJECT_SCHEMA_NAME.

TABLE_NAME

sysname

Nome della tabella.

CONSTRAINT_CATALOG

nvarchar(128)

Qualificatore di vincolo.

CONSTRAINT_SCHEMA

nvarchar(128)

Nome dello schema che contiene il vincolo.

Nota importanteImportante
Non utilizzare viste INFORMATION_SCHEMA per determinare lo schema di un oggetto. L'unica modalità affidabile per cercare lo schema di un oggetto consiste nell'eseguire una query sulla vista del catalogo sys.objects o sulla funzione OBJECT_SCHEMA_NAME.

CONSTRAINT_NAME

sysname

Nome del vincolo.

Esempi

Nell'esempio seguente vengono restituite informazioni sul vincolo per ogni tabella o vista nello schema Production.

USE AdventureWorks;
GO

SELECT *
FROM INFORMATION_SCHEMA.CONSTRAINT_TABLE_USAGE AS ctu
INNER JOIN sys.objects AS o ON ctu.TABLE_NAME = o.name 
    AND OBJECT_SCHEMA_NAME(o.object_id) = N'Production';

Nell'esempio seguente viene restituita ogni tabella o vista del database per la quale è definito un vincolo CHECK. La query contiene un join alla vista CHECK_CONSTRAINT per ottenere la definizione del vincolo CHECK.

USE AdventureWorks;
GO

SELECT ctu.TABLE_SCHEMA, ctu.TABLE_NAME, cc.CONSTRAINT_SCHEMA, cc.CONSTRAINT_NAME, cc.CHECK_CLAUSE
FROM INFORMATION_SCHEMA.CHECK_CONSTRAINTS AS cc
INNER JOIN INFORMATION_SCHEMA.CONSTRAINT_TABLE_USAGE AS ctu
    ON cc.CONSTRAINT_NAME = ctu.CONSTRAINT_NAME;