Tip: Update der Inhalte eines SQL Views

In einer Datenbank wie MySQL kann man sich Selects als Pseudotabellen anlegen und dann selbst wieder über den diese Tabelle einen Select bauen. So etwas nennt man einen View.

Beispiel:

SELECT a.vorname,a.name,b.beruf as beruf FROM Personen as a,Berufe as b WHERE a.berufsid=b.id;

Wenn man diesen Select als View anlegt, hat man drei Felder : Vorname,Name,Beruf

Nennen wir den View mal Test, wäre dieser Select möglich :

SELECT vorname,name FROM Test WHERE beruf = „Bäcker“;

Wenn man nun versucht den VIEW mit UPDATE zu ändern, geht das eigentlich nicht, weil es eine nicht eindeutige Beziehung der Datensätze untereinander ist.

Für mein aktuelles Pandora Projekt habe ich nun einen View gebaut, bei dem das Update tatsächlich möglich ist:

select `pa`.`id` AS `id`,`pa`.`vorname` AS `vorname`,`pa`.`nachname` AS `nachname`,`pa`.`server` AS `server`,`pc`.`value` AS `friendmode` from (`pandora`.`pandora_config` `pc` join `pandora`.`pandora_account` `pa`) where ((`pa`.`id` = `pc`.`uid`) and (`pc`.`name` = ‚michsuchen‘))

Das funktioniert aufgrund dieser Beziehung „((`pa`.`id` = `pc`.`uid`)“ , denn in beiden Tabellen gibt es exakt einen eindeutigen Datensatz. d.b. :

Für jede Person gibt es exakt einen Config Eintrag in der anderen Tabelle. Damit kann der Datenbankserver jetzt die logische Verbindung der Datensätze „rückwärts“ auflösen und in der richtigen Tabelle den richtigen Eintrag ändern:

UPDATE `pandora_userliste` SET friendmode = ‚erlauben‘ WHERE vorname =’meinvorname‘;

Damit ist der View Read/Writeable geworden was es man mit Hilfe des ORDB Frameworks ausnutzen kann, denn Views werden ein Java Datenobjekte erzeugt. Über Views lassen sich schlanke Strukturen und Datenbankobjekte erzeugen, die dazu noch updatefähig sein können (aber nicht müssen). Als Folge davon erhält man übersichtliche Datenbankstrukturen, die von einem Menschen leicht gelesen und verstanden werden können, aber trotzdem Datenbanktechnisch höchst performant gestaltet sein können.

Klassik im Park 2015

Ein sehr schönes Konzert bot sich heute trotz Regen im Bürgerpark in Braunschweig.

20.000 Zuschauer sind laut Veranstalter gekommen. Zu hören gab es klassische Filmmusiken für Orchester. Von Star Trek bis Indiana Jones waren fast nur bekannte Titel versammelt.

20150525_144923

350 grad Panorama vom Bühnenhauptfeld

 

Einzig die Medleys waren etwas unschön, da man die einzelnen Stücke der meist stundenlangen Soundtracks schwer heraushören konnte. Besonders negativ blieb zum Glück nur die Star Trek TNG Melodie hängen, da diese wohl „aufgejazzed“ sein sollte, kurz um, das Timing des Stücks war schief.

Das man nicht jedes Lied singen kann, auch wenn man eine wunderbare Stimme hat, zeigte die Orchester eigene Sängerin, als Sie sich mit Celine Dion und Ihrem Stück „My Heart will go on“ aus Titanic maß. Ihre wahre Stärke zeigte die Sängerin in allen anderen Ihrer Stücke, die wirklich klasse anzuhören waren.

Als letztes offizielles Stück des Abends wurden Prolog und Epilog von „Star Wars -A new Hope“ auch bekannt als Star Wars I aufgeführt, was zu einem sagenhaften Jubel führte.

Jubel ganz anderer Art zeigten allerdings die Besucher, die ein Freiluft Konzert für die Ohren, als Kinogang missverstanden, bei dem man auf der Bühe alles sehen können müßte. Laute „Hinsetzen“ Rufe blockierten kurzfristig die Veranstaltung, als aus verständlichen, weil ziemlich nassen Gründen, mehrere Menschen stehen blieben. Zum Glück konnte auch dies Problem gelöst werden.

Ein Abschlußwort:

Wer auch immer die deppige Drone hat fliegen lassen, sollte sich nicht erwischen lassen, auch wenn er eine Aufstiegsgenehmigung gehabt haben sollte. Die Propellergeräusche waren extrem nervig und weit zu hören!

VOIP Apps

Keine Panik, dies ist nicht die versprochene VOIP Lösung vom letzten Beitrag 🙂

Ich bin im Repository von Linux über eine VOIP Anwendung gestoßen namens Seren. Die versprochenen Eigenschaften der Anwendung sind ein lokales Ad-HocNetzwerk, ein Chat, eine Verfügbarkeit auf jedem Linux in der Konsole und eingebaute Verschlüsselungscodecs.

All diese Aussagen stimmen. Die Anwendung verschlüsselt den Datentransfer wahlweise mit verschiedenen freien Codecs wie Blowfish, daß auch von SSH eingesetzt wird. Da jeder Linux Rechner in einem LAN eine IP Adresse hat, kann ein Anruf an diese IP aufgebaut werden, das heißt theoretisch kann man in einer Firma in einem größeren WLAN Netzwerk sofort spontan mit jedem anderen Rechner reden. Neben dem Anruf und einer Konferenz, kann man auch einen Chat durchführen. Die Software muss lediglich in Bezug auf den Verschlüsselungsalgorithmus eingestellt werden, ansonsten ist sie sofort einsatzbereit. Dabei ist die App gerade mal 96 kilobyte groß. Das sind eigentlich die besten Voraussetzungen dafür extrem erfolgreich zu sein. Leider patzt die Anwendung bei der Sprachqualität, denn die ist unter aller ***zensiert*** .

Zum Glück gibt es bessere Alternativen. Einige Jabber Anwendungen erlauben es, im lokalen Netzwerk ein spontanes Netzwerk aufzubauen indem einfach nach benachbarten Rechnern gesucht wird. Das unter Fedora vorinstallierte Empathy, liefert genau diese Möglichkeit und kommt mit einem Gui-Interface daher. Empathy benötigt dazu leider mehr Ressourcen, bietet aber natürlich auch viel mehr Funktionen, zum Beispiel einen Videochat und vernünftige Sprachqualität. Die Gesprächspartner, also alle die zum Beispiel Empathy auf ihrem Linux Rechner laufen haben, werden automatisiert in eine Liste eingetragen, wenn der Rechner gefunden wurde. Ihr spielt natürlich in die Netzwerke Topologie des Lans eine große Rolle.

Empathy hat natürlich auch seine Fehler, unter anderem patzt es in der Videokonferenz. Für den Alltagsgebrauch ist es aber ein zuverlässiger Helfer. Allerdings werden Ihnen vermutlich die nötigen Chatpartner fehlen. Da wo ein ad hoc Netzwerk für Audiochats im Praxisbetrieb extrem sinnvoll wäre, zum Beispiel im Büro, wird man allerdings kaum Desktop Linux Rechner finden. Natürlich gibt es für Windows Desktop Rechner auch eine Alternative. Die meisten Chefs werden es allerdings nicht einsehen, das es sehr praktisch wäre so ein ab hoc Netzwerk aufzubauen. Sehr wahrscheinlich werden diese Chefs damit argumentieren, dass die Arbeitsproduktivität sinken würde, wenn jeder Mitarbeiter mit jedem anderen Mitarbeiter einfach so chatten könnte. Das Film Vorurteil, dass alle Sekretärinnen Quatschtanten sind, ist natürlich völliger Blödsinn. Mitarbeiter setzen solche Kommunikationsmöglichkeiten durchaus mit Bedacht ein, wenn sie sinnvoll sind.

Der große Vorteil so eines ad hoc Netzwerk, besteht gerade darin dass es nicht administriert werden muss. Zum Beispiel erspart dies auch das interne Telefonbuch, welches sowieso nie auf Stand ist. Logischerweise benötigen die Mitarbeiter kein Telefon mehr um miteinander zu telefonieren. Dafür müssen die Computer natürlich mit einem Mikrofon und einer Kamera ausgestattet sein, wobei letzteres nicht unbedingt zwingend notwendig ist. Über die Anbindung eines IP Telefonanschlusses an das entsprechende VOIP Tool auf dem Desktop PC, kann auch normal und vor allen Dingen günstig telefoniert werden. Viele IP Telefonanschluss Anbieter liefern eine Festnetznummer dazu.

Unter Linux gibt es eine sehr große Auswahl an VOIP fähiger Software. Darunter wird auch sicher eine Software sein, die Ihnen gefällt. Es bleibt zu hoffen, dass sich in Büros mehr Linux-Rechner durchsetzen, damit diese Möglichkeiten besser und vor allen Dingen kostengünstiger als zum Beispiel durch Lösungen von Cisco genutzt werden können.

Hier noch einige bekannte Anwendungen, die es u.a. auch für Windows gibt: Pidgin, Empathy, Spark, Chatsecure, Textsecure.