Aracılığıyla paylaş


.show database schema command

Aşağıdaki komutlar veritabanı şemasını tablo, JSON nesnesi veya CSL betiği olarak gösterir.

İzinler

Bu komutları çalıştırmak için en az Veritabanı Kullanıcısı, Veritabanı Görüntüleyicisi veya Veritabanı İzleyicisi izinlerine sahip olmanız gerekir. Daha fazla bilgi için bkz . rol tabanlı erişim denetimi.

.show database schema

Sözdizimi

.showdatabase DatabaseName schema [details] [if_later_than "Sürüm"]

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

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

Söz dizimi kuralları hakkında daha fazla bilgi edinin.

Parametreler

Ad Tür Zorunlu Açıklama
DatabaseName string ✔️ Şemasının gösterildiği veritabanının adı.
Sürüm string "vMM.mm" biçimindeki sürüm. MM ana sürümü, mm ise ikincil sürümü temsil eder.

Döndürülenler

Tüm tabloları ve sütunları tek bir tablo veya JSON nesnesinde olan seçili veritabanlarının yapısının düz bir listesini döndürür. Bir sürümle kullanıldığında, veritabanı yalnızca sağlanan sürümden daha sonraki bir sürümse döndürülür.

Örnekler

Veritabanı şemasını göster

'TestDB' veritabanında 'Events' adlı bir tablo vardır.

.show database TestDB schema 

Çıktı

DatabaseName TableName ColumnName ColumnType IsDefaultTable IsDefaultColumn PrettyName Sürüm
TestDB False False v.1.1
TestDB Ekinlikler Doğru Yanlış
TestDB Ekinlikler Veri Akışı Adı System.String Doğru Yanlış
TestDB Ekinlikler StartTime System.DateTime Doğru Yanlış
TestDB Ekinlikler EndTime System.DateTime Doğru Yanlış
TestDB Ekinlikler City System.String Doğru Yanlış
TestDB Ekinlikler SessionId System.Int32 True True

Sürüme göre veritabanı şemasını göster

Aşağıdaki örnekte veritabanı yalnızca sağlanan sürümden daha sonraki bir sürümse döndürülür.

.show database TestDB schema if_later_than "v1.0" 

Çıktı

DatabaseName TableName ColumnName ColumnType IsDefaultTable IsDefaultColumn PrettyName Sürüm
TestDB False False v.1.1
TestDB Ekinlikler Doğru Yanlış
TestDB Ekinlikler Veri Akışı Adı System.String Doğru Yanlış
TestDB Ekinlikler StartTime System.DateTime Doğru Yanlış
TestDB Ekinlikler EndTime System.DateTime Doğru Yanlış
TestDB Ekinlikler City System.String Doğru Yanlış
TestDB Ekinlikler SessionId System.Int32 True True

Geçerli veritabanı sürümünden daha düşük bir sürüm sağlandığı için 'TestDB' şeması döndürüldü. Eşit veya daha yüksek bir sürüm sağlanarak boş bir sonuç elde etmiş olur.

.show database schema as json

Sözdizimi

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

.showdatabases (DatabaseName [, ...]) as schema json [with( Seçenekler])

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

Söz dizimi kuralları hakkında daha fazla bilgi edinin.

Parametreler

Ad Tür Zorunlu Açıklama
DatabaseName string ✔️ Şemasının gösterildiği veritabanının adı.
Sürüm string "vMM.mm" biçimindeki sürüm. MM ana sürümü, mm ise ikincil sürümü temsil eder.
Seçenekler string Döndürülecek veritabanı varlık şemalarını belirlemek için kullanılan virgülle ayrılmış anahtar-değer çiftlerinin listesi. Hiçbiri belirtilmezse, tüm varlıklar döndürülür. Desteklenen varlık seçeneklerine bakın.

Desteklenen varlık seçenekleri

Aşağıdaki tabloda Options parametresi için sağlayabilecek değerler açıklanmaktadır.

Anahtar Value Açıklama
Tables bool ise true, tablolar döndürülür.
ExternalTables bool ise true, dış tablolar döndürülür.
MaterializedViews bool ise true, gerçekleştirilmiş görünümler döndürülür.
Functions bool ise trueişlevleri döndürülür.

Döndürülenler

Seçili veritabanlarının yapısının düz listesini, tüm tablo ve sütunlarını JSON nesnesi olarak döndürür. Bir sürümle kullanıldığında, veritabanı yalnızca sağlanan sürümden daha sonraki bir sürümse döndürülür.

Örnekler

.show database TestDB schema as json

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

Çıktı

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

Verilen (veya geçerli) veritabanı şemasının bir kopyasını oluşturmak için gerekli tüm komutları içeren bir CSL betiği oluşturur.

Sözdizimi

.showdatabase DatabaseName csl as schema script [with( Seçenekler])

Söz dizimi kuralları hakkında daha fazla bilgi edinin.

Parametreler

Ad Tür Zorunlu Açıklama
DatabaseName string ✔️ Şemasının gösterildiği veritabanının adı.
Seçenekler string Ne döndürüleceğini belirlemek için kullanılan virgülle ayrılmış anahtar-değer çiftlerinin listesi. Desteklenen seçeneklere bakın.

Desteklenen seçenekler

Anahtar Value Açıklama
IncludeEncodingPolicies bool varsayılan değeridir true. veritabanı/tablo/sütun düzeyinde kodlama ilkeleri dahil edilirse true.
IncludeSecuritySettings bool varsayılan değeridir true. ise true, aşağıdaki seçenekler dahil edilir:
- Veritabanı/tablo düzeyinde yetkili sorumlular.
- Tablo düzeyinde satır düzeyi güvenlik ilkeleri.
- Tablo düzeyinde kısıtlı görünüm erişim ilkeleri.
IncludeIngestionMappings bool varsayılan değeridir true. tablo düzeyinde alma eşlemeleri dahil edilirse true.
ShowObfuscatedStrings bool varsayılan değeridir false. Ise true, Kusto yapılandırmalarında kalıcı olan kimlik bilgileri döndürülür. Bu seçeneği kullanmak için veritabanı yöneticisi veya varlık oluşturucu olmanız gerekir. Bu izinlere sahip değilseniz, komut başarısız olur.

Döndürülenler

Dize olarak döndürülen betik şunları içerir:

  • Veritabanındaki tüm tabloları oluşturmaya ilişkin komutlar.
  • Tüm veritabanı/tablo/sütun ilkelerini özgün ilkelere uyacak şekilde ayarlama komutları.
  • Veritabanındaki tüm kullanıcı tanımlı işlevleri oluşturmaya veya değiştirmeye ilişkin komutlar.

Örnekler

.show database TestDB schema as csl script

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