Raccolte di schemi di SQL Server

Si applica a: .NET Framework .NET .NET Standard

Scarica ADO.NET

Il provider di dati Microsoft SqlClient per SQL Server supporta raccolte di schemi aggiuntive, oltre a quelle comuni. Le raccolte di schemi variano leggermente in base alla versione di SQL Server usata. Per determinare l'elenco delle raccolte di schemi supportate, chiamare il metodo GetSchema senza argomenti oppure con il nome della raccolta di schemi "MetaDataCollections". In questo modo verrà restituito un oggetto DataTable con un elenco delle raccolte di schemi supportati, il numero delle restrizioni supportate da ciascuna raccolta e il numero di parti identificatore usate.

Database

ColumnName Tipo di dati Descrizione
database_name String Nome del database.
dbid Int16 ID del database.
create_date DataOra Data di creazione del database.

Chiavi esterne

ColumnName Tipo di dati Descrizione
CONSTRAINT_CATALOG String Il catalogo a cui appartiene il vincolo.
CONSTRAINT_SCHEMA String Schema contenente il vincolo.
CONSTRAINT_NAME String Nome.
TABLE_CATALOG String Nome della tabella di cui fa parte il vincolo.
TABLE_SCHEMA String Schema contenente la tabella.
TABLE_NAME String Nome della tabella
CONSTRAINT_TYPE String Tipo di vincolo. È consentito solo il tipo "FOREIGN KEY".
IS_DEFERRABLE String Specifica se il vincolo può essere rinviato. Restituisce NO.
INITIALLY_DEFERRED String Specifica se inizialmente il vincolo può essere rinviato. Restituisce NO.

Indici

ColumnName Tipo di dati Descrizione
constraint_catalog String Catalogo a cui appartiene l'indice.
constraint_schema String Schema contenente l'indice.
constraint_name String Nome dell'indice.
table_catalog String Nome della tabella a cui è associato l'indice.
table_schema String Schema contenente la tabella a cui è associato l'indice.
table_name String Nome della tabella.
index_name String Nome dell'indice.
type_desc String Il tipo di indice sarà uno dei seguenti:

- MUCCHIO
- CLUSTERIZZATO
- NONCLUSTERIZZATO
-XML
-SPAZIALE

IndexColumns

ColumnName Tipo di dati Descrizione
constraint_catalog String Catalogo a cui appartiene l'indice.
constraint_schema String Schema contenente l'indice.
constraint_name String Nome dell'indice.
table_catalog String Nome della tabella a cui è associato l'indice.
table_schema String Schema contenente la tabella a cui è associato l'indice.
table_name String Nome della tabella.
column_name String Nome della colonna a cui è associato l'indice.
ordinal_position Int32 Posizione ordinale della colonna.
KeyType Byte Tipo di oggetto.
index_name String Nome dell'indice.

Procedure

ColumnName Tipo di dati Descrizione
SPECIFIC_CATALOG String Nome specifico del catalogo.
SPECIFIC_SCHEMA String Nome specifico dello schema.
SPECIFIC_NAME String Nome specifico del catalogo.
ROUTINE_CATALOG String Catalogo di appartenenza della procedura archiviata
ROUTINE_SCHEMA String Schema che contiene la procedura memorizzata.
ROUTINE_NAME String Nome della procedura memorizzata.
ROUTINE_TYPE String Restituisce PROCEDURE per le stored procedure e FUNCTION per le funzioni.
CREATO DataOra Ora in cui è stata creata la procedura.
LAST_ALTERED DataOra Data e ora dell'ultima modifica della routine.

Parametri di procedure

ColumnName Tipo di dati Descrizione
SPECIFIC_CATALOG Stringa Nome del catalogo della routine per cui viene specificato questo parametro.
SPECIFIC_SCHEMA Stringa Lo schema contenente la routine a cui appartiene questo parametro.
SPECIFIC_NAME String Il nome della routine contenente questo parametro.
ORDINAL_POSITION Int32 Posizione ordinale del parametro a partire da 1. Per il valore restituito di una routine, è uguale a 0.
PARAMETER_MODE String Restituisce IN se è un parametro di input, OUT se è un parametro di output e INOUT se è un parametro di input/output.
IS_RESULT Stringa Restituisce YES se indica il risultato di una routine che è una funzione. In caso contrario restituisce NO.
AS_LOCATOR Stringa Restituisce YES se dichiarato come indicatore di posizione. In caso contrario restituisce NO.
PARAMETER_NAME Stringa Nome del parametro. È NULL se corrisponde al valore restituito da una funzione.
DATA_TYPE Stringa Tipo di dati fornito dal sistema.
CHARACTER_MAXIMUM_LENGTH Int32 Lunghezza massima in caratteri per tipi di dati binary o character. In caso contrario, restituisce NULL.
CHARACTER_OCTET_LENGTH Int32 Lunghezza massima in byte per tipi di dati binary o character. In caso contrario, viene restituito NULL.
COLLATION_CATALOG String Nome del catalogo delle regole di confronto del parametro. Se non è uno dei tipi di carattere, restituisce NULL.
COLLATION_SCHEMA Stringa Restituisce sempre NULL.
COLLATION_NAME String Nome della collazione del parametro. Se non è uno dei tipi di carattere, restituisce NULL.
CHARACTER_SET_CATALOG String Nome del catalogo in cui è definito il set di caratteri del parametro. Se non è uno dei tipi di carattere, restituisce NULL.
CHARACTER_SET_SCHEMA String Restituisce sempre NULL.
CHARACTER_SET_NAME String Nome del set di caratteri del parametro. Se non è uno dei tipi di carattere, restituisce NULL.
NUMERIC_PRECISION Byte Precisione dei dati numerici approssimati, dei dati numerici esatti, dei dati integer o dei dati in valuta. In caso contrario, viene restituito NULL.
NUMERIC_PRECISION_RADIX Int16 Base di precisione dei dati numerici approssimati, dei dati numerici esatti, dei dati integer o dei dati in valuta. In caso contrario, viene restituito NULL.
NUMERIC_SCALE Int32 Scala dei dati numerici approssimati, dei dati numerici esatti, dei dati integer o dei dati in valuta. In caso contrario, viene restituito NULL.
DATETIME_PRECISION Int16 La precisione in secondi frazionari se il tipo di parametro è datetime oppure smalldatetime. In caso contrario, viene restituito NULL.
INTERVAL_TYPE String NULL. Riservato per un utilizzo futuro da parte di SQL Server.
INTERVAL_PRECISION Int16 NULL. Riservato per un utilizzo futuro da parte di SQL Server.

Tabelle

ColumnName Tipo di dati Descrizione
TABLE_CATALOG String Catalogo della tabella.
TABLE_SCHEMA String Schema contenente la tabella.
TABLE_NAME String Nome della tabella.
TABLE_TYPE String Tipo di tabella. Può essere VIEW o BASE TABLE.

Colonne

ColumnName Tipo di dati Descrizione
TABLE_CATALOG String Catalogo della tabella.
TABLE_SCHEMA String Schema contenente la tabella.
TABLE_NAME String Nome della tabella.
COLUMN_NAME String Nome colonna.
ORDINAL_POSITION Int32 Numero di identificazione della colonna.
COLUMN_DEFAULT String Il valore predefinito della colonna.
IS_NULLABLE String Nullabilità della colonna. Se la colonna supporta i valori NULL, restituisce YES. In caso contrario, restituisce NO.
DATA_TYPE String Tipo di dati fornito dal sistema.
CHARACTER_MAXIMUM_LENGTH Int32 – Sql8, Int16 – Sql7 Lunghezza massima espressa in caratteri per i dati di tipo binario, carattere, text o image. In caso contrario, viene restituito NULL.
CHARACTER_OCTET_LENGTH Int32 – SQL8, Int16 – Sql7 Lunghezza massima espressa in byte per i dati di tipo binario, carattere, text o image. In caso contrario, viene restituito NULL.
NUMERIC_PRECISION Byte senza segno Precisione dei dati numerici approssimati, dei dati numerici esatti, dei dati integer o dei dati in valuta. In caso contrario, viene restituito NULL.
NUMERIC_PRECISION_RADIX Int16 Base di precisione dei dati numerici approssimati, dei dati numerici esatti, dei dati integer o dei dati in valuta. In caso contrario, viene restituito NULL.
NUMERIC_SCALE Int32 Scala dei dati numerici approssimati, dei dati numerici esatti, dei dati integer o dei dati in valuta. In caso contrario, viene restituito NULL.
DATETIME_PRECISION Int16 Codice di sottotipo per i tipi di dati datetime e interval SQL-92. Per gli altri tipi di dati viene restituito NULL.
CHARACTER_SET_CATALOG String Se la colonna presenta un tipo di dati carattere o testo, viene restituito master, che indica il database in cui è posizionato il set di caratteri. In caso contrario, viene restituito NULL.
CHARACTER_SET_SCHEMA String Restituisce sempre NULL.
CHARACTER_SET_NAME String Se la colonna presenta un tipo di dati carattere o testo, viene restituito il nome univoco del set di caratteri. In caso contrario, viene restituito NULL.
COLLATION_CATALOG String Se la colonna presenta un tipo di dati carattere o testo, viene restituito master, che indica il database in cui sono definite le regole di confronto. Negli altri casi la colonna è NULL.
IS_FILESTREAM String YES in caso di colonna con attributo FILESTREAM.

NO se la colonna non dispone dell'attributo FILESTREAM.
IS_SPARSE String YES se la colonna è una colonna sparse.

NO se la colonna non è una colonna sparse.
IS_COLUMN_SET String YES se la colonna è una colonna set di colonne.

NO se la colonna non è una colonna del set di colonne.

Tutte le colonne

La raccolta di schemi AllColumns viene usata per supportare le colonne di tipo sparse. AllColumns dispone delle stesse restrizioni e dello schema DataTable risultante della raccolta di schemi Columns, l'unica differenza è costituita dal fatto che AllColumns include colonne del set di colonne che non sono incluse nella raccolta di schemi Columns. Nella tabella seguente vengono descritte queste colonne.

ColumnName Tipo di dati Descrizione
TABLE_CATALOG String Catalogo della tabella.
TABLE_SCHEMA String Schema contenente la tabella.
TABLE_NAME String Nome della tabella.
COLUMN_NAME String Nome colonna.
ORDINAL_POSITION Int32 Numero di identificazione della colonna.
COLUMN_DEFAULT String Il valore predefinito della colonna.
IS_NULLABLE String Nullabilità della colonna. Se la colonna supporta i valori NULL, restituisce YES. In caso contrario, viene restituito NO.
DATA_TYPE String Tipo di dati fornito dal sistema.
CHARACTER_MAXIMUM_LENGTH Int32 Lunghezza massima espressa in caratteri per i dati di tipo binario, carattere, text o image. In caso contrario, viene restituito NULL.
CHARACTER_OCTET_LENGTH Int32 Lunghezza massima espressa in byte per i dati di tipo binario, carattere, text o image. In caso contrario, viene restituito NULL.
NUMERIC_PRECISION Byte senza segno Precisione dei dati numerici approssimati, dei dati numerici esatti, dei dati integer o dei dati in valuta. In caso contrario, viene restituito NULL.
NUMERIC_PRECISION_RADIX Int16 Base di precisione dei dati numerici approssimati, dei dati numerici esatti, dei dati integer o dei dati in valuta. In caso contrario, viene restituito NULL.
NUMERIC_SCALE Int32 Scala dei dati numerici approssimati, dei dati numerici esatti, dei dati integer o dei dati in valuta. In caso contrario, viene restituito NULL.
DATETIME_PRECISION Int16 Codice di sottotipo per i tipi di dati datetime e interval SQL-92. Per gli altri tipi di dati viene restituito NULL.
CHARACTER_SET_CATALOG String Se la colonna presenta un tipo di dati carattere o testo, viene restituito master, che indica il database in cui è posizionato il set di caratteri. In caso contrario, viene restituito NULL.
CHARACTER_SET_SCHEMA String Restituisce sempre NULL.
CHARACTER_SET_NAME String Se la colonna presenta un tipo di dati carattere o testo, viene restituito il nome univoco del set di caratteri. In caso contrario, viene restituito NULL.
COLLATION_CATALOG String Se la colonna presenta un tipo di dati carattere o testo, viene restituito master, che indica il database in cui sono definite le regole di confronto. Negli altri casi la colonna è NULL.
IS_FILESTREAM String YES in caso di colonna con attributo FILESTREAM.

NO se la colonna non dispone dell'attributo FILESTREAM.
IS_SPARSE String YES se la colonna è una colonna sparse.

NO se la colonna non è una colonna sparse.
IS_COLUMN_SET String YES se la colonna è una colonna set di colonne.

NO se la colonna non è una colonna del set di colonne.

ColumnSetColumns

La raccolta di schemi ColumnSetColumns viene usata per supportare le colonne di tipo sparse. La raccolta di schemi ColumnSetColumns restituisce lo schema per tutte le colonne di un set di colonne. Nella tabella seguente vengono descritte queste colonne.

ColumnName Tipo di dati Descrizione
TABLE_CATALOG String Catalogo della tabella.
TABLE_SCHEMA String Schema contenente la tabella.
TABLE_NAME String Nome della tabella.
COLUMN_NAME String Nome colonna.
ORDINAL_POSITION Int32 Numero di identificazione della colonna.
COLUMN_DEFAULT String Il valore predefinito della colonna.
IS_NULLABLE String Nullabilità della colonna. Se la colonna supporta i valori NULL, restituisce YES. In caso contrario, viene restituito NO.
DATA_TYPE String Tipo di dati fornito dal sistema.
CHARACTER_MAXIMUM_LENGTH Int32 Lunghezza massima espressa in caratteri per i dati di tipo binario, carattere, text o image. In caso contrario, viene restituito NULL.
CHARACTER_OCTET_LENGTH Int32 Lunghezza massima espressa in byte per i dati di tipo binario, carattere, text o image. In caso contrario, viene restituito NULL.
NUMERIC_PRECISION Byte senza segno Precisione dei dati numerici approssimati, dei dati numerici esatti, dei dati integer o dei dati in valuta. In caso contrario, viene restituito NULL.
NUMERIC_PRECISION_RADIX Int16 Base di precisione dei dati numerici approssimati, dei dati numerici esatti, dei dati integer o dei dati in valuta. In caso contrario, viene restituito NULL.
NUMERIC_SCALE Int32 Scala dei dati numerici approssimati, dei dati numerici esatti, dei dati integer o dei dati in valuta. In caso contrario, viene restituito NULL.
DATETIME_PRECISION Int16 Codice di sottotipo per i tipi di dati datetime e interval SQL-92. Per gli altri tipi di dati viene restituito NULL.
CHARACTER_SET_CATALOG String Se la colonna presenta un tipo di dati carattere o testo, viene restituito master, che indica il database in cui è posizionato il set di caratteri. In caso contrario, viene restituito NULL.
CHARACTER_SET_SCHEMA String Restituisce sempre NULL.
CHARACTER_SET_NAME String Se la colonna presenta un tipo di dati carattere o testo, viene restituito il nome univoco del set di caratteri. In caso contrario, viene restituito NULL.
COLLATION_CATALOG String Se la colonna presenta un tipo di dati carattere o testo, viene restituito master, che indica il database in cui sono definite le regole di confronto. Negli altri casi la colonna è NULL.
IS_FILESTREAM String YES in caso di colonna con attributo FILESTREAM.

NO se la colonna non dispone dell'attributo FILESTREAM.
IS_SPARSE String YES se la colonna è una colonna sparse.

NO se la colonna non è una colonna sparse.
IS_COLUMN_SET String YES se la colonna è una colonna set di colonne.

NO se la colonna non è una colonna del set di colonne.

Utenti

ColumnName Tipo di dati Descrizione
uid Int16 ID utente, univoco all'interno del database. 1 corrisponde al proprietario del database.
user_name String Il nome utente o il nome del gruppo, univoco nel database.
createdate Data e ora Data in cui è stato aggiunto l'account.
updatedate DataOra Data dell'ultima modifica dell'account.

Visualizzazioni

ColumnName Tipo di dati Descrizione
TABLE_CATALOG String Catalogo della visualizzazione.
TABLE_SCHEMA String Schema contenente la visualizzazione.
TABLE_NAME String Nome della vista.
CHECK_OPTION String Tipo di opzione WITH CHECK OPTION. Se la visualizzazione originale è stata creata usando WITH CHECK OPTION, il tipo è CASCADE. In caso contrario, viene restituito NONE.
È_AGGIORNABILE String Specifica se è possibile aggiornare la vista. Restituisce sempre NO.

Visualizza colonne

ColumnName Tipo di dati Descrizione
VIEW_CATALOG String Catalogo della visualizzazione.
VIEW_SCHEMA String Schema contenente la visualizzazione.
VIEW_NAME String Nome della vista.
TABLE_CATALOG String Catalogo della tabella associata a questa visualizzazione.
TABLE_SCHEMA String Schema che contiene la tabella associata a questa vista.
TABLE_NAME String Il nome della tabella associata alla visualizzazione. Tabella di base.
COLUMN_NAME String Nome colonna.

UserDefinedTypes

ColumnName Tipo di dati Descrizione
assembly_name String Il nome del file dell'assembly.
udt_name String Il nome della classe dell'assembly.
version_major Oggetto Il numero di versione principale.
version_minor Oggetto Numero di versione secondaria.
version_build Oggetto Numero di build.
version_revision Oggetto Numero di revisione.
culture_info Oggetto Le informazioni locali associate a questo UDT.
chiave_pubblica Oggetto La chiave pubblica usata dall'assembly.
is_fixed_length Booleano Specifica se la lunghezza del tipo è sempre uguale a max_length.
max_length Int16 La lunghezza massima del tipo in byte.
Data_di_creazione Data e ora La data di creazione o di registrazione dell'assembly.
Descrizione del set di autorizzazioni String Il nome descrittivo del set di autorizzazioni o del livello di sicurezza dell'assembly.

Vedi anche