Sdílet prostřednictvím


Příkaz .show database schema

Platí pro: ✅Microsoft FabricAzure Data Explorer

Následující příkazy zobrazují schéma databáze jako tabulku, objekt JSON nebo skript CSL.

Oprávnění

Ke spuštění těchto příkazů musíte mít alespoň oprávnění uživatele databáze, prohlížeče databáze nebo monitorování databáze. Další informace najdete v tématu řízení přístupu na základě role.

.show database schema

Syntaxe

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

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

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

Přečtěte si další informace o konvencích syntaxe.

Parametry

Název Type Požadováno Popis
Název databáze string ✔️ Název databáze, pro kterou se má schéma zobrazit.
Verze string Verze ve formátu "vMM.mm". MM představuje hlavní verzi a mm představuje podverzi.

Návraty

Vrátí plochý seznam struktury vybraných databází se všemi tabulkami a sloupci v jedné tabulce nebo objektu JSON. Při použití s verzí se databáze vrátí pouze v případě, že se jedná o novější verzi, než je zadaná verze.

Příklady

Zobrazení schématu databáze

Následující příklad zobrazí TestDB schéma databáze. Databáze TestDB má jednu tabulku s názvem Events.

.show database TestDB schema 

Výstup

DatabaseName TableName ColumnName ColumnType Tabulka IsDefaultTable IsDefaultColumn PrettyName Verze
TestDB False False v.1.1
TestDB Události True False
TestDB Události Název System.String True False
TestDB Události Počáteční čas System.DateTime True False
TestDB Události EndTime System.DateTime True False
TestDB Události City System.String True False
TestDB Události ID relace System.Int32 True True

Zobrazení schématu databáze na základě verze

V následujícím příkladu se databáze vrátí pouze v případě, že se jedná o novější verzi, než je zadaná verze.

.show database TestDB schema if_later_than "v1.0" 

Výstup

DatabaseName TableName ColumnName ColumnType Tabulka IsDefaultTable IsDefaultColumn PrettyName Verze
TestDB False False v.1.1
TestDB Události True False
TestDB Události Název System.String True False
TestDB Události Počáteční čas System.DateTime True False
TestDB Události EndTime System.DateTime True False
TestDB Události City System.String True False
TestDB Události ID relace System.Int32 True True

Vzhledem k tomu, že byla poskytnuta verze nižší než aktuální verze databáze, vrátilo se schéma TestDB. Poskytnutí stejné nebo vyšší verze by vygenerovalo prázdný výsledek.

.show database schema as json

Syntaxe

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

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

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

Přečtěte si další informace o konvencích syntaxe.

Parametry

Název Type Požadováno Popis
Název databáze string ✔️ Název databáze, pro kterou se má schéma zobrazit.
Verze string Verze ve formátu "vMM.mm". MM představuje hlavní verzi a mm představuje podverzi.
Možnosti string Seznam párů klíč-hodnota oddělených čárkami, které slouží k určení schémat entit databáze, která se mají vrátit. Pokud není zadán žádný, vrátí se všechny entity. Viz podporované možnosti entity.

Podporované možnosti entity

Následující tabulka popisuje hodnoty, které se mají zadat pro parametr Options .

Key Hodnota Popis
Tables bool Pokud truese vrátí tabulky.
ExternalTables bool Pokud truese vrátí externí tabulky.
MaterializedViews bool Pokud truese vrátí materializovaná zobrazení.
Functions bool Pokud truese vrátí funkce.

Návraty

Vrátí plochý seznam struktury vybraných databází se všemi tabulkami a sloupci jako objektem JSON. Při použití s verzí se databáze vrátí pouze v případě, že se jedná o novější verzi, než je zadaná verze.

Příklady

Následující příklad vrátí TestDB schéma databáze ve formátu JSON.

.show database TestDB schema as json

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

Výstup

"{""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

Vygeneruje skript CSL se všemi požadovanými příkazy pro vytvoření kopie daného (nebo aktuálního) schématu databáze.

Syntaxe

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

Přečtěte si další informace o konvencích syntaxe.

Parametry

Název Type Požadováno Popis
Název databáze string ✔️ Název databáze, pro kterou se má schéma zobrazit.
Možnosti string Seznam párů klíč-hodnota oddělených čárkami, které slouží k určení toho, co se má vrátit. Viz podporované možnosti.

Podporované možnosti

Key Hodnota Popis
IncludeEncodingPolicies bool Výchozí hodnota trueje . Pokud truejsou zahrnuty zásady kódování na úrovni databáze, tabulky nebo sloupce.
IncludeSecuritySettings bool Výchozí hodnota trueje . Pokud truejsou zahrnuty následující možnosti:
– Autorizované objekty zabezpečení na úrovni databáze nebo tabulky.
– Zásady zabezpečení na úrovni řádků na úrovni tabulky.
– Zásady přístupu s omezeným přístupem na úrovni tabulky.
IncludeIngestionMappings bool Výchozí hodnota trueje . Pokud truese zahrnou mapování příjmu dat na úrovni tabulky.
ShowObfuscatedStrings bool Výchozí hodnota falseje . Pokud truese vrátí přihlašovací údaje trvalé v konfiguracích Kusto. Pokud chcete tuto možnost použít, musíte být správcem databáze nebo tvůrcem entity. Pokud tato oprávnění nemáte, příkaz selže.

Návraty

Skript vrácený jako řetězec obsahuje:

  • Příkazy pro vytvoření všech tabulek v databázi
  • Příkazy pro nastavení všech zásad databáze, tabulek a sloupců tak, aby odpovídaly původním zásadám.
  • Příkazy pro vytvoření nebo změnu všech uživatelem definovaných funkcí v databázi.

Příklady

Skript CSL

Následující příklad vygeneruje skript CSL s potřebnými příkazy pro opětovné vytvoření schématu TestDB databáze.

.show database TestDB schema as csl script

Skript CSL s obfuskovanými hodnotami

Následující příklad vygeneruje skript CSL s potřebnými příkazy pro opětovné vytvoření schématu TestDB databáze. Obsahuje hodnoty, které byly ve výsledcích předchozího příkladu obfuskovány.

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