In diesem kurzen Beitrag zeige ich Ihnen wie Sie mit Hilfe von Views (am Beispiel eines SQL Servers) komplexe Datenbankabfragen abbilden und überwachen können.
servereye verbietet komplexe Abfragen in seinen SQL Sensoren auf Grund der Vermeidung von SQL Injections. Der Mechanismus ist hier sehr strikt weil wir vermeiden wollen, dass auf die schnelle ein Drop Table einer wichtigen Kundendatenbank passiert.
Wenn Sie nun aber doch einmal eine komplexe Abfrage auf Ihre Ergebnisse (Auswertung von Warenwirtschaftssystemen zum Beispiel) überwachen wollen können Sie einfach eine View erstellen. Diese nimmt die Komplexität aus der Abfrage und Sie können unsere SQL Abfrage Sensoren damit füttern.
Im Prinzip können Sie natürlich jeden x-beliebigen SQL Browser benutzen, aber ich zeige Ihnen dies einmal an Hand des SQL Management Studio Express von Microsoft.
Zuerst verbinden Sie sich zu der gewünschten Datenbank-Instanz:
Gehen Sie nun zur Datenbank auf welche Sie eine Abfrage durchführen möchten und klappen Sie diese auf.
Wenn Sie auf „neue Sicht“ klickt hat man prinzipiell zwei Möglichkeiten. Man kann den aufgehenden Dialog sofort schließen oder Ihn benutzen zum Erstellen einer Abfrage. Ersteres sollte man tun wenn man bereits eine fertige SQL Abfrage erstellt hat. Man kopiert diese in das untere Fenster und speichert die View unter einem Namen ab.
Hier mit Editor:
Im Editor können Sie die Beziehungen zwischen Tabellen einfach zusammenklicken.
Wurde alles gespeichert befindet sich links in der Navigation (bei der Datenbank) im Punkt „Sichten“ eure neu erstellte View:
Nun kann euch auch servereye nicht mehr an einer Überwachung „hindern“ 🙂
Ich kann eine einfache Abfrage wie „Select * from MeineView“ in den „MS-SQL Abfrage“ Sensor kopieren und nun meine Auswertungen durchführen und in einem schönen Chart protokollieren lassen.
Man könnte fast vermuten, dass es sich hier um meinen Kontostand oder einen Tannenbaum handelt, so kurz vor Weihnachten 🙂
Natürlich gibt es auch andere Methoden eine View zu erstellen, aber ich finde dies ist die schnellste Methode, die für jeden Kenntnisstand funktioniert. Das ganze können Sie analog natürlich bei MySQL oder Oracle ähnlich handhaben. (mit SQL Browsern wie der MySQL Workbench, usw.)
Vielen Dank fürs Lesen.