Partilhar via


Comando .show database schema

Aplica-se a: ✅Microsoft FabricAzure Data Explorer

Os comandos a seguir mostram o esquema de banco de dados como uma tabela, objeto JSON ou script CSL.

Permissões

Você deve ter pelo menos as permissões Usuário do Banco de Dados, Visualizador do Banco de Dados ou Monitor do Banco de Dados para executar esses comandos. Para obter mais informações, confira Controle de acesso baseado em função.

.show database schema

Sintaxe

.showdatabase DatabaseName schema [details] [ if_later_than "Versão"]

.showdatabases (Nome_do_banco de dados [, ...]) schema details

.showdatabases (DatabaseName if_later_than "Versão" [, ...]) schema details

Saiba mais sobre as convenções de sintaxe.

Parâmetros

Nome Digitar Obrigatória Descrição
DatabaseName string ✔️ O nome do banco de dados para o qual mostrar o esquema.
Versão string A versão em formato "vMM.mm". MM representa a versão principal e mm representa a versão secundária.

Devoluções

Retorna uma lista simples da estrutura dos bancos de dados selecionados com todas as suas tabelas e colunas em uma única tabela ou objeto JSON. Quando usado com uma versão, o banco de dados só será retornado se for uma versão posterior à versão fornecida.

Exemplos

Mostrar esquema de banco de dados

O exemplo a seguir exibe o esquema do TestDB banco de dados. O banco de dados TestDB tem uma tabela chamada Events.

.show database TestDB schema 

Saída

DatabaseName TableName ColumnName ColumnType IsDefaultTable IsDefaultColumn Nome bonito Versão
TestDB Falso Falso v.1.1
TestDB Eventos Verdadeiro Falso
TestDB Eventos Nome System.String Verdadeiro Falso
TestDB Eventos StartTime System.DateTime Verdadeiro Falso
TestDB Eventos EndTime System.DateTime Verdadeiro Falso
TestDB Eventos City System.String Verdadeiro Falso
TestDB Eventos SessionId System.Int32 Verdadeiro Verdadeiro

Mostrar esquema de banco de dados com base na versão

No exemplo a seguir, o banco de dados só será retornado se for uma versão posterior à versão fornecida.

.show database TestDB schema if_later_than "v1.0" 

Saída

DatabaseName TableName ColumnName ColumnType IsDefaultTable IsDefaultColumn Nome bonito Versão
TestDB Falso Falso v.1.1
TestDB Eventos Verdadeiro Falso
TestDB Eventos Nome System.String Verdadeiro Falso
TestDB Eventos StartTime System.DateTime Verdadeiro Falso
TestDB Eventos EndTime System.DateTime Verdadeiro Falso
TestDB Eventos City System.String Verdadeiro Falso
TestDB Eventos SessionId System.Int32 Verdadeiro Verdadeiro

Como uma versão inferior à versão atual do banco de dados foi fornecida, o esquema 'TestDB' foi retornado. Fornecer uma versão igual ou superior geraria um resultado vazio.

.show esquema de banco de dados como json

Sintaxe

.showdatabase DatabaseName schema [if_later_than "Versão"]as json

.showdatabases (DatabaseName [, ...]) json schema as [ (with Opções])

.showdatabases (DatabaseName if_later_than "Versão" [, ...]) json schema as [ (with Opções])

Saiba mais sobre as convenções de sintaxe.

Parâmetros

Nome Digitar Obrigatória Descrição
DatabaseName string ✔️ O nome do banco de dados para o qual mostrar o esquema.
Versão string A versão em formato "vMM.mm". MM representa a versão principal e mm representa a versão secundária.
Opções string Uma lista de pares de chave-valor separados por vírgula usados para determinar quais esquemas de entidade de banco de dados retornar. Se nenhum for especificado, todas as entidades serão retornadas. Consulte as opções de entidade compatíveis.

Opções de entidade com suporte

A tabela a seguir descreve os valores a serem fornecidos para o parâmetro Options .

Chave Valor Descrição
Tables bool Se true, as tabelas são retornadas.
ExternalTables bool Se true, tabelas externas são retornadas.
MaterializedViews bool Se true, exibições materializadas serão retornadas.
Functions bool Se true, as funções são retornadas.

Devoluções

Retorna uma lista simples da estrutura dos bancos de dados selecionados com todas as suas tabelas e colunas como um objeto JSON. Quando usado com uma versão, o banco de dados só será retornado se for uma versão posterior à versão fornecida.

Exemplos

O exemplo a seguir retorna o TestDB esquema de banco de dados no formato JSON.

.show database TestDB schema as json

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

Saída

"{""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 esquema de banco de dados como script csl

Gera um script CSL com todos os comandos necessários para criar uma cópia do esquema de banco de dados fornecido (ou atual).

Sintaxe

.showdatabase DatabaseName as script schema csl [ (with Opções])

Saiba mais sobre as convenções de sintaxe.

Parâmetros

Nome Digitar Obrigatória Descrição
DatabaseName string ✔️ O nome do banco de dados para o qual mostrar o esquema.
Opções string Uma lista de pares de valores-chave separados por vírgula usados para determinar o que retornar. Consulte as opções compatíveis.

Opções com suporte

Chave Valor Descrição
IncludeEncodingPolicies bool Assume o padrão de true. Se true, as políticas de codificação no nível de banco de dados/tabela/coluna serão incluídas.
IncludeSecuritySettings bool Assume o padrão de true. Se true, as seguintes opções estão incluídas:
- Entidades autorizadas no nível do banco de dados/tabela.
- Políticas de segurança em nível de linha no nível da tabela.
- Políticas de acesso restrito à visualização no nível da tabela.
IncludeIngestionMappings bool Assume o padrão de true. Se true, os mapeamentos de ingestão no nível da tabela serão incluídos.
ShowObfuscatedStrings bool Assume o padrão de false. Se true, as credenciais persistiram nas configurações do Kusto serão retornadas. Para usar essa opção, você deve ser um administrador de banco de dados ou criador de entidade. Se você não tiver essas permissões, o comando falhará.

Devoluções

O script, retornado como uma cadeia de caracteres, contém:

  • Comandos para criar todas as tabelas no banco de dados.
  • Comandos para definir todas as políticas de banco de dados/tabelas/colunas para corresponder às políticas originais.
  • Comandos para criar ou alterar todas as funções definidas pelo usuário no banco de dados.

Exemplos

Script CSL

O exemplo a seguir gera um script CSL com os comandos necessários para recriar o esquema de TestDB banco de dados.

.show database TestDB schema as csl script

Script CSL com valores ofuscados

O exemplo a seguir gera um script CSL com os comandos necessários para recriar o esquema de TestDB banco de dados. Ele inclui valores que foram ofuscados nos resultados do exemplo anterior.

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