Raccolte di schemi di SQL Server (ADO.NET)
Il provider di dati Microsoft .NET Framework per SQL Server, oltre alle raccolte di schemi comuni, supporta raccolte di schemi aggiuntivi. Le raccolte di schemi variano leggermente in base alla versione di SQL Server utilizzata. Per determinare l'elenco delle raccolte di schemi supportati 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 utilizzate.
Databases
Nome colonna |
Tipo di dati |
Descrizione |
---|---|---|
database_name |
String |
Nome del database. |
Dbid |
Int16 |
Identificatore del database. |
create_date |
DateTime |
Data di creazione del database. |
Foreign Keys
Nome colonna |
Tipo di dati |
Descrizione |
---|---|---|
constraint_catalog |
String |
Catalogo a cui appartiene il vincolo. |
constraint_schema |
Stringa |
Schema contenente il vincolo. |
constraint_name |
String |
Nome. |
table_catalog |
String |
Nome della tabella contenente 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 |
Stringa |
Specifica se il vincolo può essere rinviato. Restituisce NO. |
initially_deferred |
Stringa |
Specifica se inizialmente il vincolo può essere rinviato. Restituisce NO. |
Indexes
Nome colonna |
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 |
Stringa |
Schema contenente la tabella a cui è associato l'indice. |
table_name |
String |
Il nome della tabella. |
Indexes (SQL Server 2008)
A partire da .NET Framework versione 3.5 SP1 e SQL Server 2008, le colonne seguenti sono state aggiunte alla raccolta di schemi Indexes per supportare nuovi tipi di dati spaziali, filestream e colonne di tipo sparse. Tali colonne non sono supportate nelle versioni precedenti di .NET Framework e di SQL Server.
Nome colonna |
Tipo di dati |
Descrizione |
---|---|---|
type_desc |
String |
I valori del tipo di indice sono i seguenti:
|
IndexColumns
Nome colonna |
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 |
Stringa |
Schema contenente la tabella a cui è associato l'indice. |
table_name |
String |
Il nome della tabella. |
column_name |
String |
Nome della colonna a cui è associato l'indice. |
ordinal_position |
Int32 |
Posizione ordinale della colonna. |
KeyType |
UInt16 |
Tipo di oggetto. |
Procedures
Questa raccolta è disponibile solo in SQL Server 2000 e versioni successive.
Nome colonna |
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 a cui appartiene la stored procedure. |
routine_schema |
Stringa |
Schema contenente la stored procedure. |
routine_name |
String |
Il nome della stored procedure. |
routine_type |
String |
Restituisce PROCEDURE per le stored procedure e FUNCTION per le funzioni. |
created |
DateTime |
L'ora in cui è stata creata la routine. |
last_altered |
DateTime |
Data e ora dell'ultima modifica della routine. |
Procedure Parameters
Nome colonna |
Tipo di dati |
Descrizione |
---|---|---|
specific_catalog |
String |
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 |
Stringa |
Il nome della routine contenente questo parametro. |
ordinal_position |
Int16 |
Posizione ordinale del parametro iniziando da 1. Per il valore restituito di una routine, è uguale a 0. |
parameter_mode |
Stringa |
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 |
Il nome del parametro. Restituisce NULL se corrisponde al valore restituito di una funzione. |
data_type |
Stringa |
Il tipo di dati fornito dal sistema. |
character_maximum_length |
Int32 |
La lunghezza massima in caratteri per il tipo di dati carattere o binario. Per altri tipi di dati, restituisce NULL. |
character_octet_length |
Int32 |
La lunghezza massima in byte per il tipo di dati carattere o binario. Per altri tipi di dati, restituisce NULL. |
collation_catalog |
Stringa |
Il nome del catalogo per le regole di confronto del parametro. Se non è di tipo carattere, restituisce NULL. |
collation_schema |
String |
Restituisce sempre NULL. |
collation_name |
String |
Nome delle regole di confronto del parametro. Se non è di tipo carattere, restituisce NULL. |
character_set_catalog |
Stringa |
Il nome del catalogo del set di caratteri del parametro. Se non è di tipo carattere, restituisce NULL. |
character_set_schema |
String |
Restituisce sempre NULL. |
character_set_name |
String |
Nome del set di caratteri del parametro. Se non è di tipo carattere, restituisce NULL. |
numeric_precision |
Byte |
La precisione dei dati numerici approssimativi, dei dati numerici esatti, dei dati di tipo integer o dei dati di tipo valuta. Per altri tipi di dati, restituisce NULL. |
numeric_precision_radix |
Int16 |
La radice della precisione dei dati numerici approssimativi, dei dati numerici esatti, dei dati di tipo integer o dei dati di tipo valuta. Per altri tipi di dati, restituisce NULL. |
numeric_scale |
Int32 |
La scala dei dati numerici approssimativi, dei dati numerici esatti, dei dati di tipo integer o dei dati di tipo valuta. Per altri tipi di dati, restituisce NULL. |
datetime_precision |
Int16 |
Precisione in secondi frazionari se il tipo di parametro è datetime o smalldatetime. Per altri tipi di parametro, restituisce NULL. |
interval_type |
Stringa |
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. |
Tables
Nome colonna |
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. |
Columns
Nome colonna |
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 della colonna. |
ordinal_position |
Int16 |
Numero di identificazione della colonna. |
column_default |
String |
Valore predefinito della colonna. |
is_nullable |
String |
Supporto di valori Null della colonna. Se la colonna supporta i valori NULL, restituisce YES. In caso contrario, restituisce NO. |
data_type |
Stringa |
Il tipo di dati fornito dal sistema. |
character_maximum_length |
Int32 – Sql8, Int16 – Sql7 |
La lunghezza massima in caratteri per i tipi di dati binario e carattere o per i tipi di dati testo e immagine. Per altri tipi di dati, viene restituito NULL. |
character_octet_length |
Int32 – SQL8, Int16 – Sql7 |
La lunghezza massima in byte per i tipi di dati binario e carattere o per i tipi di dati testo e immagine. Per altri tipi di dati, viene restituito NULL. |
numeric_precision |
Unsigned Byte |
La precisione dei dati numerici approssimativi, dei dati numerici esatti, dei dati di tipo integer o dei dati di tipo valuta. Per altri tipi di dati, viene restituito NULL. |
numeric_precision_radix |
Int16 |
La radice della precisione dei dati numerici approssimativi, dei dati numerici esatti, dei dati di tipo integer o dei dati di tipo valuta. Per altri tipi di dati, viene restituito NULL. |
numeric_scale |
Int32 |
La scala dei dati numerici approssimativi, dei dati numerici esatti, dei dati di tipo integer o dei dati di tipo valuta. Per altri tipi di dati, viene restituito NULL. |
datetime_precision |
Int16 |
Il codice Subtype per datetime e per i tipi di dati dell'intervallo di SQL-92. Per altri tipi di dati, viene restituito NULL. |
character_set_catalog |
Stringa |
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. Per altri tipi di dati, 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 |
Stringa |
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. In caso contrario, il valore di questa colonna è NULL. |
Columns (SQL Server 2008)
A partire da .NET Framework versione 3.5 SP1 e SQL Server 2008, le colonne seguenti sono state aggiunte alla raccolta di schemi Columns per supportare nuovi tipi di dati spaziali, filestream e colonne di tipo sparse. Tali colonne non sono supportate nelle versioni precedenti di .NET Framework e di SQL Server.
Nome colonna |
Tipo di dati |
Descrizione |
---|---|---|
IS_FILESTREAM |
String |
YES in caso di colonna con attributo FILESTREAM. NO se la colonna non dispone dell'attributo FILESTREAM. |
IS_SPARSE |
String |
YES in caso di colonna di tipo sparse. NO se la colonna non è di tipo sparse. |
IS_COLUMN_SET |
String |
YES in caso di colonna del set di colonne. NO se la colonna non fa parte del set di colonne. |
AllColumns (SQL Server 2008)
A partire da .NET Framework versione 3.5 SP1 e SQL Server 2008, è stata aggiunta la raccolta di schemi AllColumns per supportare colonne di tipo sparse. AllColumns non è supportato nelle versioni precedenti di .NET Framework e di SQL Server.
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.
Nome colonna |
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 della colonna. |
ordinal_position |
Int16 |
Numero di identificazione della colonna. |
column_default |
String |
Valore predefinito della colonna. |
is_nullable |
String |
Supporto di valori Null della colonna. Se la colonna supporta i valori NULL, restituisce YES. In caso contrario, restituisce NO. |
data_type |
String |
Il tipo di dati fornito dal sistema. |
character_maximum_length |
Int32 per SQL Server 2000 e versioni successive, Int16 per SQL Server 7.0 |
La lunghezza massima in caratteri per i tipi di dati binario e carattere o per i tipi di dati testo e immagine. In caso contrario, viene restituito NULL. |
character_octet_length |
Int32 per SQL Server 2000 e versioni successive, Int16 per SQL Server 7.0 |
La lunghezza massima in byte per i tipi di dati binario e carattere o per i tipi di dati testo e immagine. Per altri tipi di dati, viene restituito NULL. |
numeric_precision |
Unsigned Byte |
La precisione dei dati numerici approssimativi, dei dati numerici esatti, dei dati di tipo integer o dei dati di tipo valuta. Per altri tipi di dati, viene restituito NULL. |
numeric_precision_radix |
Int16 |
La radice della precisione dei dati numerici approssimativi, dei dati numerici esatti, dei dati di tipo integer o dei dati di tipo valuta. Per altri tipi di dati, viene restituito NULL. |
numeric_scale |
Int32 |
La scala dei dati numerici approssimativi, dei dati numerici esatti, dei dati di tipo integer o dei dati di tipo valuta. Per altri tipi di dati, viene restituito NULL. |
datetime_precision |
Int16 |
Il codice Subtype per datetime e per i tipi di dati dell'intervallo di SQL-92. Per altri tipi di dati, viene restituito NULL. |
character_set_catalog |
Stringa |
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. Per altri tipi di dati, 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 |
Stringa |
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. In caso contrario, il valore di questa 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 in caso di colonna di tipo sparse. NO se la colonna non è di tipo sparse. |
IS_COLUMN_SET |
String |
YES in caso di colonna del set di colonne. NO se la colonna non fa parte del set di colonne. |
ColumnSetColumns (SQL Server 2008)
A partire da .NET Framework versione 3.5 SP1 e SQL Server 2008, è stata aggiunta la raccolta di schemi ColumnSetColumns per supportare colonne di tipo sparse. ColumnSetColumns non è supportato nelle versioni precedenti di .NET Framework e di SQL Server. La raccolta di schemi ColumnSetColumns restituisce lo schema per tutte le colonne di un set di colonne. Nella tabella seguente vengono descritte queste colonne.
Nome colonna |
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 della colonna. |
ordinal_position |
Int16 |
Numero di identificazione della colonna. |
column_default |
String |
Valore predefinito della colonna. |
is_nullable |
String |
Supporto di valori Null della colonna. Se la colonna supporta i valori NULL, restituisce YES. In caso contrario, restituisce NO. |
data_type |
String |
Il tipo di dati fornito dal sistema. |
character_maximum_length |
Int32 per SQL Server 2000 e versioni successive, Int16 per SQL Server 7.0 |
La lunghezza massima in caratteri per i tipi di dati binario e carattere o per i tipi di dati testo e immagine. In caso contrario, viene restituito NULL. |
character_octet_length |
Int32 per SQL Server 2000 e versioni successive, Int16 per SQL Server 7.0 |
La lunghezza massima in byte per i tipi di dati binario e carattere o per i tipi di dati testo e immagine. Per altri tipi di dati, viene restituito NULL. |
numeric_precision |
Unsigned Byte |
La precisione dei dati numerici approssimativi, dei dati numerici esatti, dei dati di tipo integer o dei dati di tipo valuta. Per altri tipi di dati, viene restituito NULL. |
numeric_precision_radix |
Int16 |
La radice della precisione dei dati numerici approssimativi, dei dati numerici esatti, dei dati di tipo integer o dei dati di tipo valuta. Per altri tipi di dati, viene restituito NULL. |
numeric_scale |
Int32 |
La scala dei dati numerici approssimativi, dei dati numerici esatti, dei dati di tipo integer o dei dati di tipo valuta. Per altri tipi di dati, viene restituito NULL. |
datetime_precision |
Int16 |
Il codice Subtype per datetime e per i tipi di dati dell'intervallo di SQL-92. Per altri tipi di dati, viene restituito NULL. |
character_set_catalog |
Stringa |
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. Per altri tipi di dati, 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 |
Stringa |
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. In caso contrario, il valore di questa 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 in caso di colonna di tipo sparse. NO se la colonna non è di tipo sparse. |
IS_COLUMN_SET |
String |
YES in caso di colonna del set di colonne. NO se la colonna non fa parte del set di colonne. |
Users
Nome colonna |
Tipo di dati |
Descrizione |
---|---|---|
uid |
Int16 |
Identificatore utente univoco nel database. 1 corrisponde al proprietario del database. |
name |
Stringa |
Nome utente o nome del gruppo, univoco nel database. |
createdate |
DateTime |
Data in cui è stato aggiunto l'account. |
updatedate |
DateTime |
Data dell'ultima modifica dell'account. |
Views
Questa raccolta è disponibile solo in SQL Server 2000 e versioni successive.
Nome colonna |
Tipo di dati |
Descrizione |
---|---|---|
table_catalog |
String |
Catalogo della visualizzazione. |
table_schema |
String |
Schema contenente la visualizzazione. |
table_name |
String |
Nome della visualizzazione. |
check_option |
String |
Tipo di WITH CHECK OPTION. Se la visualizzazione originale è stata creata utilizzando WITH CHECK OPTION, il tipo è CASCADE. In caso contrario, viene restituito NONE. |
is_updatable |
Stringa |
Specifica se la visualizzazione può essere aggiornata. Restituisce sempre NO. |
ViewColumns
Nome colonna |
Tipo di dati |
Descrizione |
---|---|---|
view_catalog |
String |
Catalogo della visualizzazione. |
view_schema |
String |
Schema contenente la visualizzazione. |
view_name |
String |
Nome della visualizzazione. |
table_catalog |
String |
Catalogo della tabella associata a questa visualizzazione. |
table_schema |
Stringa |
Il catalogo della tabella associata a questa visualizzazione. |
table_name |
Stringa |
Nome della tabella associata alla visualizzazione. Tabella di base. |
column_name |
Stringa |
Il nome della colonna. |
UserDefinedTypes
Questa raccolta è disponibile solo in SQL Server 2005 e versioni successive.
Nome colonna |
Tipo di dati |
Descrizione |
---|---|---|
assembly_name |
String |
Nome del file dell'assembly. |
UDT_name |
String |
Nome della classe per l'assembly. |
version_major |
Object |
Numero di versione principale. |
version_minor |
Object |
Numero di versione secondario. |
version_build |
Object |
Numero di build. |
version_revision |
Object |
Numero di revisione. |
Culture_info |
Object |
Informazioni sulle impostazioni cultura associate all'UDT. |
Public_key |
Object |
La chiave pubblica utilizzata dall'assembly. |
Is_fixed_length |
Boolean |
Specifica se la lunghezza del tipo è sempre uguale a max_length. |
max_length |
Int16 |
La lunghezza massima del tipo in byte. |
permission_set_desc |
Stringa |
Il nome descrittivo del set di autorizzazioni o del livello di sicurezza dell'assembly. |
create_date |
DateTime |
La data di creazione o di registrazione dell'assembly. |