2016-07-27 26 views
7

Veritabanını kullanarak tüm veritabanının şemasını (SQL Server veya Postgres) betimlemek mümkün mü?Datagrip ile tüm veritabanının komut dosyası şeması

DDL'yi, her bir saklı yordam/işlev için kendi başına tablo, görünüm ve kaynak için alabildiğimi biliyorum.

Veritabanındaki tüm nesneler için tek seferde bir komut dosyası alabilir miyim?

Alternatif olarak, tüm rutinlerdeki kodları bir kerede aramak için bir yol var mı, hangisinin #table temp tablosunu kullandığını bulmam gerekiyor mu?

cevap

5

Bugün buna bakarak ve sadece bulunmuştur. Kopyalamak istediğiniz şemayı sağ tıklayıp "DDL'yi Kopyala" yı seçerseniz, bu, oluşturma komut dosyasını panoya kopyalayacaktır. Eğer hiç soruma cevap vermez aşağıdaki sorguyu

SELECT * 
FROM information_schema.routines 
WHERE routine_definition LIKE '%#table%' 
+2

ile entegre edilecektir, ancak ciddi bir sınırlama vardır: tüm saklı yordamlar, CREATE PROCEDURE usp_RequestFileDelete (@FileId INT) olarak kodlanır; yani kod (en azından Sql için) Sunucu) – vittore

+0

Bu utanç verici. Datagrip'i yalnızca Amazon'un Redshift'i ile kullanıyorum. Sql Server ile çalışmam gerektiğinde SSMS kullanıyorum. SQL Prompt veya SQL Complete eklediğinizde SSMS mükemmeldir. – RobbZ

+0

aynı şey, sqlcomplete öğemi seviyorum. yerli OSX aracı olması umuduyla, sadece bazı DB şeyler yapmak için benim pc RDP gerekmez. İhtiyacım olan her şeyi rahatça yapamam. – vittore

0

Şimdilik yalnızca damping tabloları çalışır. 2016'da, Ağustos sonunda piyasaya çıkacak olan EAP, mysqldump ve pg_dump ile bir bütünleşme olacaktır.

Check the screenshot

+1

yapabilirsiniz.END_PARAGRAPH bütün işlemlerinde #table aramak için hızlı ve kolay bir şekilde: – vittore

+0

soruna açıklık getirdi. – vittore

+0

2016.3, ilk bakışta mysqldump ve pg_dump – moscas

1

sorunun ikinci kısmını cevaplamak için. Şema ile ilgileniyorum, veri değil. Daha fazla kafa karışıklığını önlemek için