Ich nutze seit Jahren SQuirreL als SQL-Client. Nicht besonders hübsch, aber funktioniert im Alltag tadellos. Und weil Funktion bei Software wichtiger ist als Style, arbeite ich gerne damit. Die Spitze des Non-Styles bilden die innig geliebten Unix-Komandos, denn man kann sie nutzen, ohne sie zu sehen. Gleich danach kommt “vim” – optisch _sehr_ sparsam. Und XPoint. Erinnert sich jemand an CrossPoint von Peter Mandrella? … Neulich bin ich in SQuirreL auf ein Feature gestoßen, das den Gebrauchswert dieser Anwendung für mich steigert: Bookmarks. Dahinter verbirgt sich die Möglichkeit, wiederkehrende Abfragen so abzulegen, dass sie mit wenigen Tastendrücken erreichbar sind. Ich bin Tastatur-Nutzer und deshalb liebe ich dieses Feature.
Beispiel
“select * from adresse” im Editor-Fenster markieren, dann Menü “Session – Bookmark – Add”, Name sei “adr*”, bei Beschreibung gebe ich ein “Alle Adressen”. Dann kann ich im Editor-Fenster Strg-j drücken und bekomme die Liste aller Bookmarks präsentiert. Mit jedem Tastendruck reduziert sich die Anzahl der Elemente in der Auswahl. Wenn ich “a” und “d” eingetippt habe, sehe ich nur noch “adr*” und kann auf “Return” hämmern, um den Befehl in den Editor einzufügen und Strg-Return, um den Befehl auszuführen. Sehr bequem!
Für “select * from adresse” wird man kein Bookmark anlegen, aber für das WeihnachtsgeschäftSQL schon.
Asymmetrie
Ich reite nicht gerne auf Dingen herum. Einiges ist eben omnipräsent ;) Das Bookmark-Plugin von SQuirreL weist eine Asymmetrie auf: Man kann Bookmarks nicht auf dem Weg löschen, auf dem man sie erstellt hat. Aber man ist dem nicht ausgeliegert: um ein Bookmark zu bearbeiten gehe ins Menü “File – Global Preferences”, dort gibt es einen Reiter “Bookmark” und darin entsprechende Buttons für das Erstellen, Bearbeiten und Löschen.
Alternative: Das Plugin speichert seine Einstellungen in ~/.squirrel-sql/plugins/sqlbookmark/bookmarks.xml. Darin enthalten sind <Bean>
-Tags. Finde das passende Tag und editiere oder lösche es. Oder füge ein Tag hinzu, das neue Bookmark wird nach dem Neustart von SQuirreL zur Verfügung stehen.
Schmankerl: Parameter
Ein Bookmark ist erstmal nur ein kurzer Weg über die Tastatur zum Befehl. Im Alltag kommt es oft vor, dass ein Befehl einen Parameter braucht, um zum Ergebnis zu kommen.Beispiel: In “select * from adresse where id = 42″ ist “42” der Wert des Parameters. Und oft kommt mehr als ein Parameter vor. Beispiel:
select * from adresse where Name = 'Kopp' and Vorname='Matthias'
Die Werte unterscheiden sich natürlich bei jeder Abfrage, und es ist ziemlich nervig, immer wieder durch den SQL-Text zu laufen und die Werte zu verändern. Bookmarks in SQuirreL können Dir diese Lauferei abnehmen. Erstelle das Bookmark in der Form
select * from adresse where Name = '${Name-Eingabe}' and Vorname='${Vorname-Eingabe}'
Dann fragt SQuirreL die beiden Werte ab, wenn Du das Bookmark aufrufst, und setzt die beiden Werte ein, wenn es den Text in den Editor gibt. Wenn derselbe Variablenname mehrfach vorkommt, wird er nur einmal abgefragt und bei jedem Vorkommen passend ersetzt.
Wunderbar. Danke, SQuirreL.