Tabelle di base di sistema
Le tabelle di base di sistema sono le tabelle sottostanti in cui vengono effettivamente archiviati i metadati per un database specifico. Sotto questo punto di vista, il database master è speciale in quanto contiene alcune tabelle aggiuntive che non si trovano negli altri database. Queste tabelle contengono metadati persistenti il cui ambito è esteso all'intero server. Il database Resource contiene lo stesso schema della tabella di base di qualsiasi altro database diverso dal database master. Poiché, tuttavia, il database Resource non è visibile, gli utenti non possono utilizzarlo o connettersi a esso. Per ulteriori informazioni sul database Resource, vedere Database Resource.
Importante |
---|
Le tabelle di base di sistema sono utilizzate solo in Motore di database di SQL Server e non sono destinate all'utilizzo da parte di tutti gli utenti. Tali tabelle sono soggette a modifiche e la compatibilità non è garantita. |
Metadati della tabella di base di sistema
Un utente che dispone delle autorizzazioni CONTROL, ALTER o VIEW DEFINITION su un database può visualizzare i metadati della tabella di base di sistema nella vista del catalogo sys.objects. L'utente può anche risolvere i nomi e gli ID di oggetto di tabelle di base di sistema utilizzando funzioni predefinite ad esempio OBJECT_NAME e OBJECT_ID.
Per associare una tabella di base di sistema, un utente deve connettersi all'istanza di SQL Server utilizzando la connessione dell'amministratore dedicata (DAC). Se si tenta di eseguire una query SELECT da una tabella di base di sistema senza connettersi tramite DAC, viene generato un errore.
Importante |
---|
L'accesso alle tabelle di base di sistema tramite DAC è progettato solo per il personale di Microsoft e non è uno scenario di supporto per i clienti. |
Tabelle di base di sistema
Nella tabella seguente viene indicata e descritta ogni un tabella di base sistema di SQL Server.
Tabella di base |
Descrizione |
---|---|
sys.sysschobjs |
Esiste in ogni database. Ogni riga rappresenta un oggetto del database. |
sys.sysbinobjs |
Esiste in ogni database. Contiene una riga per ogni entità Service Broker del database. Le entità Service Broker includono gli elementi seguenti:
I nomi e i tipi utilizzano regole di confronto binarie predefinite. |
sys.sysclsobjs |
Esiste in ogni database. Contiene una riga per ogni entità classificata che condivide le stesse proprietà comuni che includono gli elementi seguenti:
|
sys.sysnsobjs |
Esiste in ogni database. Contiene una riga per ogni entità dell'ambito dello spazio dei nomi. Questa tabella viene utilizzata per archiviare le entità di raccolta XML. |
sys.syscolpars |
Esiste in ogni database. Contiene una riga per ogni colonna di una tabella, vista o funzione con valori di tabella.
|
sys.systypedsubobjs |
Esiste in ogni database. Contiene una riga per ogni sottoentità tipizzata. Attualmente, in questa categoria rientrano solo i parametri relativi alla funzione di partizione. |
sys.sysidxstats |
Esiste in ogni database. Contiene una riga per ogni indice o statistica di tabelle e viste indicizzate
Nota
Ogni indice (eccetto heap) è associato a una statistica che ha lo stesso nome dell'indice.
|
sys.sysiscols |
Esiste in ogni database. Contiene una riga per ogni indice persistente e colonna delle statistiche. |
sys.sysscalartypes |
Esiste in ogni database. Contiene una riga per ogni tipo di sistema o tipo definito dall'utente. |
sys.sysdbreg |
Esiste solo nel database master. Contiene una riga per ogni database registrato. |
sys.sysxsrvs |
Esiste solo nel database master. Contiene una riga per ogni server locale, collegato o remoto. |
sys.sysrmtlgns |
Questa tabella di base di sistema esiste solo nel database master solo. Contiene una riga per ogni mapping di account di accesso remoto. Viene utilizzata per eseguire il mapping tra gli account di accesso in ingresso che risultano provenire da un server corrispondente e un account di accesso locale effettivo. |
sys.syslnklgns |
Esiste solo nel database master. Contiene una riga per ogni mapping di account di accesso collegato. I mapping di account di accesso collegati vengono utilizzati da chiamate di procedure remote e query distribuite che provengono da un server locale a un server collegato corrispondente. |
sys.sysxlgns |
Esiste solo nel database master. Contiene una riga per ogni entità di server. |
sys.sysdbfiles |
Esiste in ogni database. Se il valore della colonna dbid è zero, la riga rappresenta un file che appartiene a questo database. Nel database master, il valore della colonna dbid può essere diverso da zero. In questo caso, la riga rappresenta un file master. |
sys.sysusermsg |
Esiste solo nel database master. Ogni riga rappresenta un messaggio di errore definito dall'utente. |
sys.sysprivs |
Esiste in ogni database. Contiene una riga per ogni database o autorizzazione a livello di server.
Nota
Le autorizzazioni a livello di server vengono archiviate nel database master.
|
sys.sysowners |
Esiste in ogni database. Ogni riga rappresenta un'entità di database. |
sys.sysobjkeycrypts |
Esiste in ogni database. Contiene una riga per ogni chiave simmetrica, crittografia o proprietà crittografica associata a un oggetto. |
sys.syscerts |
Esiste in ogni database. Contiene una riga per ogni certificato di un database. |
sys.sysasymkeys |
Esiste in ogni database. Ogni riga rappresenta una chiave asimmetrica. |
sys.ftinds |
Esiste in ogni database. Contiene una riga per ogni indice full-text del database. |
sys.sysxprops |
Esiste in ogni database. Contiene una riga per ogni proprietà estesa. |
sys.sysallocunits |
Esiste in ogni database. Contiene una riga per ogni unità di allocazione di archiviazione. |
sys.sysrowsets |
Esiste in ogni database. Contiene una riga per ogni set di righe della partizione per un indice o un heap. |
sys.sysrowsetrefs |
Esiste in ogni database. Contiene una riga per ogni riferimento di indice a un set di righe. |
sys.syslogshippers |
Esiste solo nel database master. Contiene una riga per ogni server di controllo del mirroring del database. |
sys.sysremsvcbinds |
Esiste in ogni database. Contiene una riga per ogni associazione al servizio remoto. |
sys.sysconvgroup |
Esiste in ogni database. Contiene una riga per ogni istanza di servizio di Service Broker. |
sys.sysxmitqueue |
Esiste in ogni database. Contiene una riga per ogni coda di trasmissione di Service Broker. |
sys.sysdesend |
Esiste in ogni database. Contiene una riga per ogni endpoint di invio di una conversazione di Service Broker. |
sys.sysdercv |
Esiste in ogni database. Contiene una riga per ogni endpoint di ricezione di una conversazione di Service Broker. |
sys.sysendpts |
Esiste solo nel database master. Contiene una riga per ogni endpoint creato nel server. |
sys.syswebmethods |
Esiste solo nel database master. Contiene una riga per ogni metodo SOAP definito in un endpoint HTTP attivato per SOAP creato nel server. |
sys.sysqnames |
Esiste in ogni database. Contiene una riga per ogni spazio dei nomi o nome completo a un token ID di 4 byte. |
sys.sysxmlcomponent |
Esiste in ogni database. Ogni riga rappresenta un componente di XML Schema. |
sys.sysxmlfacet |
Esiste in ogni database. Contiene una riga per ogni facet XML (restrizione) di definizione del tipo XML. |
sys.sysxmlplacement |
Esiste in ogni database. Contiene una riga per ogni posizione XML dei componenti XML. |
sys.syssingleobjrefs |
Esiste in ogni database. Contiene una riga per ogni riferimento N-a-1 generale. |
sys.sysmultiobjrefs |
Esiste in ogni database. Contiene una riga per ogni riferimento N-a-N generale. |
sys.sysobjvalues |
Esiste in ogni database. Contiene una riga per ogni proprietà del valore generale di un'entità. |
sys.sysguidrefs |
Esiste in ogni database. Contiene una riga per ogni riferimento a ID classificati GUID. |
Vedere anche