Condividi tramite


Comando .show database schema

Si applica a: ✅Microsoft FabricAzure Esplora dati

I comandi seguenti mostrano lo schema del database come tabella, oggetto JSON o script CSL.

Autorizzazioni

Per eseguire questi comandi, è necessario disporre almeno delle autorizzazioni Utente database, Visualizzatore database o Monitoraggio database. Per altre informazioni, vedere Controllo degli accessi in base al ruolo.

.show database schema

Sintassi

.showdatabase DatabaseName schema [details] [if_later_than "Version"]

.showdatabases (DatabaseName [, ...]) schema details

.showdatabases (DatabaseName if_later_than "Version" [, ...]) schema details

Altre informazioni sulle convenzioni di sintassi.

Parametri

Nome Digita Obbligatorio Descrizione
DatabaseName string ✔️ Nome del database per il quale visualizzare lo schema.
Versione string Versione in formato "vMM.mm". MM rappresenta la versione principale e mm rappresenta la versione secondaria.

Valori restituiti

Restituisce un elenco semplice della struttura dei database selezionati con tutte le relative tabelle e colonne in una singola tabella o oggetto JSON. Se usato con una versione, il database viene restituito solo se è una versione successiva rispetto alla versione fornita.

Esempi

Visualizzare lo schema del database

Nell'esempio seguente viene visualizzato lo schema del TestDB database. Nel database TestDB è presente una tabella denominata Events.

.show database TestDB schema 

Output

DatabaseName TableName ColumnName ColumnType IsDefaultTable IsDefaultColumn PrettyName Versione
TestDB Falso Falso v.1.1
TestDB Eventi Vero False
TestDB Eventi Nome System.String Vero False
TestDB Eventi StartTime System.DateTime Vero False
TestDB Eventi EndTime System.DateTime Vero False
TestDB Eventi Città System.String Vero False
TestDB Eventi SessionId System.Int32 Vero Vero

Visualizzare lo schema del database in base alla versione

Nell'esempio seguente il database viene restituito solo se è una versione successiva rispetto alla versione fornita.

.show database TestDB schema if_later_than "v1.0" 

Output

DatabaseName TableName ColumnName ColumnType IsDefaultTable IsDefaultColumn PrettyName Versione
TestDB Falso Falso v.1.1
TestDB Eventi Vero False
TestDB Eventi Nome System.String Vero False
TestDB Eventi StartTime System.DateTime Vero False
TestDB Eventi EndTime System.DateTime Vero False
TestDB Eventi Città System.String Vero False
TestDB Eventi SessionId System.Int32 Vero Vero

Poiché è stata fornita una versione inferiore alla versione corrente del database, è stato restituito lo schema 'TestDB'. Se si specifica una versione uguale o successiva, verrà generato un risultato vuoto.

.show database schema as json

Sintassi

.showdatabase DatabaseName schema [if_later_than "Version"] as json

.showdatabases (DatabaseName [, ...]) as schema json [with( Opzioni])

.showdatabases (DatabaseName if_later_than "Version" [, ...]) as schema json [with( Opzioni])

Altre informazioni sulle convenzioni di sintassi.

Parametri

Nome Digita Obbligatorio Descrizione
DatabaseName string ✔️ Nome del database per il quale visualizzare lo schema.
Versione string Versione in formato "vMM.mm". MM rappresenta la versione principale e mm rappresenta la versione secondaria.
Opzioni string Elenco di coppie chiave-valore delimitate da virgole usate per determinare quali schemi di entità di database restituire. Se non viene specificato alcun valore, vengono restituite tutte le entità. Vedere opzioni di entità supportate.

Opzioni di entità supportate

Nella tabella seguente vengono descritti i valori da fornire per il parametro Options .

Chiave valore Descrizione
Tables bool Se true, vengono restituite tabelle.
ExternalTables bool Se true, vengono restituite tabelle esterne.
MaterializedViews bool Se true, vengono restituite viste materializzate.
Functions bool Se true, vengono restituite funzioni.

Valori restituiti

Restituisce un elenco semplice della struttura dei database selezionati con tutte le relative tabelle e colonne come oggetto JSON. Se usato con una versione, il database viene restituito solo se è una versione successiva rispetto alla versione fornita.

Esempi

L'esempio seguente restituisce lo schema del TestDB database in formato JSON.

.show database TestDB schema as json

.show databases (TestDB, TestDB2) schema as json with(Tables=True, Functions=True)

Output

"{""Databases"":{""TestDB"":{""Name"":""TestDB"",""Tables"":{""Events"":{""Name"":""Events"",""DefaultColumn"":null,""OrderedColumns"":[{""Name"":""Name"",""Type"":""System.String""},{""Name"":""StartTime"",""Type"":""System.DateTime""},{""Name"":""EndTime"",""Type"":""System.DateTime""},{""Name"":""City"",""Type"":""System.String""},{""Name"":""SessionId"",""Type"":""System.Int32""}]}},""PrettyName"":null,""MajorVersion"":1,""MinorVersion"":1,""Functions"":{}}}}"

.show database schema as csl script

Genera uno script CSL con tutti i comandi necessari per creare una copia dello schema del database specificato (o corrente).

Sintassi

.showdatabase DatabaseName csl as schema script [with( Opzioni])

Altre informazioni sulle convenzioni di sintassi.

Parametri

Nome Digita Obbligatorio Descrizione
DatabaseName string ✔️ Nome del database per il quale visualizzare lo schema.
Opzioni string Elenco di coppie chiave-valore delimitate da virgole usate per determinare cosa restituire. Vedere le opzioni supportate.

Opzioni supportate

Chiave valore Descrizione
IncludeEncodingPolicies bool Il valore predefinito è true. Se true, vengono inclusi i criteri di codifica a livello di database/tabella/colonna.
IncludeSecuritySettings bool Il valore predefinito è true. Se true, sono incluse le opzioni seguenti:
- Entità autorizzate a livello di database/tabella.
- Criteri di sicurezza a livello di riga a livello di tabella.
- Criteri di accesso alla visualizzazione con restrizioni a livello di tabella.
IncludeIngestionMappings bool Il valore predefinito è true. Se true, vengono inclusi i mapping di inserimento a livello di tabella.
ShowObfuscatedStrings bool Il valore predefinito è false. Se true, vengono restituite credenziali persistenti nelle configurazioni Kusto. Per usare questa opzione, è necessario essere un amministratore del database o un creatore di entità. Se queste autorizzazioni non sono disponibili, il comando non riesce.

Valori restituiti

Lo script, restituito come stringa, contiene:

  • Comandi per creare tutte le tabelle nel database.
  • Comandi per impostare tutti i criteri di database/tabelle/colonne in modo che corrispondano ai criteri originali.
  • Comandi per creare o modificare tutte le funzioni definite dall'utente nel database.

Esempi

Script CSL

Nell'esempio seguente viene generato uno script CSL con i comandi necessari per ricreare lo schema del TestDB database.

.show database TestDB schema as csl script

Script CSL con valori offuscati

Nell'esempio seguente viene generato uno script CSL con i comandi necessari per ricreare lo schema del TestDB database. Include valori offuscati nei risultati dell'esempio precedente.

.show database TestDB schema as csl script with (ShowObfuscatedStrings = true)