Eine neue Version der sQLshell ist verfügbar!
Die sQLshell bot - besonders im Virtuellen Abfrageeditor, aber auch in vielen weiteren Bereichen schon seit langem viele Komfortfunktionen zur Arbeit mit Fremdschlüsselbeziehungen.
Diese kann manjedoch in Datenmodellen nicht ausnutzen, wi referentielle Integrität über Trigger oder Stored Procedures oder - noch schlimmer - über Applikationslogik abgebildet wird.
Die sQLshell unterstützte Anwender in solchen Fällen mittels eines Plugins, das das Datenmodell untersuchte und abhängig von den Eigenschaften der vorgefundenen Tabellen und Spalten Vorschläge für mögliche Fremdschlüsselbeziehungen unterbreitete. Allerdings arbeitete dieses Plugin so, dass als Resultat die SLQ-Anweisungen zur tatsächlichen Erstellung einer realen Fremdschlüsselbeziehung ausgegeben wurde.
Nun will oder kann man nicht Änderungen an einem vorliegenden Datenmodell vornehmen, nur weil man dadurch besser mit der sQLshell arbeiten kann. Daher wurde das Konzept virtueller Fremdschlüsselvereinbarungen eingeführt. Diese existieren nur "im Kopf" der sQLshell, sind aber für die Komponenten und Funktionalitäten vollkommen gleichwertig zu realen, im Datenmodell modellierten.
Im Visuellen Abfrageeditor sind sie graphisch von den "echten" abgesetzt: Die virtuellen werdn als gestrichelte Linien dargestellt, die modellierten weiterhin mit durchgezogenen Linien. Ein Beispiel ist in der folgenden Abbildung dargestellt:
Virtuelle Fremdschlüsselbeziehung dargestellt im Visuellen Abfrageeditor
Anlegen lassen sich diese virtuellen Fremdschlüsselbeziehungen über den Visuellen Abfrageeditor: Hierzu wurden bestehende Funktionalitäten ein wenig erweitert: Man kann wie gewohnt einen Join dadurch erzeugen, dass man eine Spalte einer im Visuellen Abfrageeditor befindlichen Tabelle auf eine andere zieht. Dieser neu erzeugte Join ist immer ein LEFT JOIN. Nach Erzeugung kann man über ein Kontextmenü den Typ des Joins ändern. Neu ist die Möglichkeit, aus einem Join eine virtuelle Fremdschlüsselbeziehung zu machen. Nacheiner solchen Umwandlung verschwindet der Join und wird durch eine virtuelle Fremdschlüsselbeziehung ersetzt - diese Umwandlung kann nicht rückgängig gemacht werden.
Mit virtuellen Fremdschlüsselbeziehungen können alle Manipulationen und Interaktionen durchgeführt werden, die auch mit real modellierten Fremdschlüsselbeziehungen und Joins möglich sin - natürlich lassen sie sich auch ebenso einfach wieder entfernen!
Multi-User-WebDAV, Docker, GitHub
17.11.2019
Nachdem ich mich in letzter Zeit verstärkt mit Docker und dem zugehörigen Ökosystem beschäftige, habe ich begonnen, verschiedenste Dienste in Containern zu testen um zu sehen, ob in manchen Fällen LXC oder KVM nicht doch die bessere Wahl wäre...
Weiterlesen...Android Basteln C und C++ Chaos Datenbanken Docker dWb+ ESP Wifi Garten Geo Go GUI Gui Hardware Java Jupyter Komponenten Links Linux Markdown Markup Music Numerik OpenSource PKI-X.509-CA Python QBrowser Rants Raspi Revisited Security Software-Test sQLshell TeleGrafana Verschiedenes Video Virtualisierung Windows Upcoming...
In eigener Sache...
Weiterlesen...Ich habe eine neue Java Swing Komponente erstellt: Es handelt sich um einen Wrapper für von JToolBar abgeleitete Klassen, die die Werkzeugleiste minimieren und sie nur dann einblenden, wenn der Mauszeiger über ihnen schwebt.
Weiterlesen...Ich habe bereits in einem früheren Artikel über meine ersten Erfolge berichtet, der sQLshell auf Basis des bestehenden Codes aus dem Projekt EBMap4D eine bessere Integration für Geo-Daten zu spendieren und entsprechende Abfragen, bzw. deren Ergebnisse auf einer Kartenansicht zu visualisieren.
Weiterlesen...Manche nennen es Blog, manche Web-Seite - ich schreibe hier hin und wieder über meine Erlebnisse, Rückschläge und Erleuchtungen bei meinen Hobbies.
Wer daran teilhaben und eventuell sogar davon profitieren möchte, muss damit leben, daß ich hin und wieder kleine Ausflüge in Bereiche mache, die nichts mit IT, Administration oder Softwareentwicklung zu tun haben.
Ich wünsche allen Lesern viel Spaß und hin und wieder einen kleinen AHA!-Effekt...
PS: Meine öffentlichen Codeberg-Repositories findet man hier.