2016-07-27 9 views
7

Ist es möglich, Schema der gesamten Datenbank (SQL Server oder Postgres) mit Hilfe von Datagrip Skript?Skript-Schema der gesamten Datenbank mit Datagrip

Ich weiß, ich kann DDL für Tabelle und Ansicht und Quelle für jede gespeicherte Prozedur/Funktion für sich selbst erhalten.

Kann ich ein Skript für alle Objekte in der Datenbank auf einmal bekommen?

Alternativ gibt es eine Möglichkeit, Code aller Routinen auf einmal zu durchsuchen, sagen, ich muss herausfinden, welche #table temporäre Tabelle verwenden?

Antwort

5

ich für diese heute suchte und fand es einfach. Wenn Sie mit der rechten Maustaste auf das zu kopierende Schema klicken und "DDL kopieren" wählen, wird das Erstellungsskript in die Zwischenablage kopiert.

+2

Nun, auf den ersten Blick tut es, aber es gibt eine ernsthafte Einschränkung: alle gespeicherten Prozeduren sind als 'CREATE PROCEDURE usp_RequestFileDelete (@FileId INT);' dh kein Code (mindestens für Sql Server) – vittore

+0

Das ist eine Schande. Ich verwende Datagrip nur mit Amazon Redshift. Ich benutze SSMS, wenn ich mit SQL Server arbeiten muss. SSMS ist ausgezeichnet, wenn Sie SQL-Eingabeaufforderung oder SQL Complete hinzufügen. – RobbZ

+0

gleiche Sache, liebe meine sqlcomplete. Ich hatte gehofft, natives OSX-Tool zu haben, also brauche ich nicht RDP zu meinem PC, nur um etwas DB-Zeug zu machen. Apantly kann nicht alles tun, was ich brauche. – vittore

0

Für jetzt funktioniert nur Dumping Tabellen. In 2016.3 EAP, das Ende August verfügbar sein wird, wird es eine Integration mit mysqldump und pg_dump geben.

Check the screenshot

+1

diese Antwort gar nicht meine Frage. Ich interessiere mich für Schema, nicht für Daten. – vittore

+0

hinzugefügt Klärung der Frage, um weitere Verwirrung zu vermeiden. – vittore

+0

2016.3 wird mit mysqldump und pg_dump integriert – moscas

1

Um Ihren zweiten Teil der Frage zu beantworten: schnelle und einfache Möglichkeit für #table in all Ihren Verfahren suchen Sie die folgende Abfrage tun können

SELECT * 
FROM information_schema.routines 
WHERE routine_definition LIKE '%#table%' 
Verwandte Themen