Mischa Sameli, Senior Webapplication-Entwickler
Wie entfernt man mit einer Datenbankabfrage doppelte Einträge in einer Tabelle, ohne temporäre Tabellen erstellen zu müssen? Hier ein Beispiel für drei populäre Datenbanksysteme, die sich bei uns im Einsatz befinden: MSSQL, MySQL und Postgres.
Wir entwickeln und integrieren individuelle Datenbank-Lösungen für höchste Ansprüche. Kunden- und projektspezifische Aufgabenstellungen setzen wir in effiziente, lösungsorientierte und massgeschneiderte Applikationen und Schnittstellen um.
Mischa Sameli, Senior Webapplication-Entwickler
Nachverfolgbarkeit von Daten und Aktionen sind immer immens wichtig – nur brauchen tuts niemand, bis einmal etwas passiert. Und dann sind keine schlauen Logfiles vorhanden. Klar. Klar kann man Backups zurückspielen, aber die bieten leider in der Regel nur gerade ein Abbild eines bestimmten Zeitpunkt (es sei denn, man hat auch Zugriff auf Transaction Logs und kann diese auswerten). Eine recht einfache Methode, wie man effizient eine schlaue Protokollierung von Datenbankmutation kommt, möchte ich im Folgenden kurz aufzeigen anhand von sogenannten Triggern.
Mischa Sameli, Senior Webapplication-Entwickler
Immer wieder gesucht und immer wieder benötigt: wie kann ich mit einer Datenbank-Abfrage mehrere Insert-Statements absetzen? Hier drei Varianent für MSSQL, MySQL und PostgreSQL.
Mischa Sameli, Senior Webapplication-Entwickler
Das Transaction-Log des MS-SQL-Servers ist eine tolle Erfindung – aber brauchen tut man’s aktiv selten. Und wenn, dann weiss man nicht wie. Aber alles der Reihe nach.
Marco Betschart, Webapplikations-Programmierer, bis 2010
Beim Erstellen einer komplexen Abfrage für ein Newslettersystem bin ich über ein nettes Feature von MSSQL gestolpert. Es gibt nämlich die Möglichkeit, mit Tabellenvariablen zu Arbeiten. Aber zuerst zur Aufgabenstellung…
Mischa Sameli, Senior Webapplication-Entwickler
Offiziell wird die Datenbank Postgres erst ab der ColdFusion-Version 8 von Adobe unterstützt. Folglich kann im CF-Administrator auch nicht so einfach ein Datenbank-Mapping erstellt werden. Zum Glück können die alten Server (ab MX 6.0) aber problemlos nachgerüstet werden.
Reinhard Jung, Senior Webapplication-Entwickler, bis Ende 2010
Auch im MS-SQL Server kann man alle Meta-Daten einer Tabelle abfragen – bis auf die DefaultValues.
Mischa Sameli, Senior Webapplication-Entwickler
Webapplikationen sind so lange sicher, bis etwas Unerwartetes geschieht. Eine Phrase, klar. Aber so wahr wie nur irgendetwas, leider. Denn selten werden alle möglichen und bekannten Sicherheitsvorkehrungen bei der Erstellung einer Webapplikation getroffen, meistens natürlich aus Zeitmangel. Im Folgenden werde ich auflisten, welche Massnahmen ich weshalb bei der Konzipierung einer ColdFusion-Applikation berücksichtigt und schliesslich integriert habe.
Mischa Sameli, Senior Webapplication-Entwickler
PostgreSQL, wie bitte? Noch nie gehört? Nicht so schlimm, denn sehr häufig hört man nicht von diesem Produkt. MySQL ist klar in aller Munde, MSSQL, Oracle oder Access kennen vermutlich auch fast alle, mindestens vom hören sagen. Aber PostgreSQL ist in unseren Breitengraden weitestgehend unbekannt. Zu unrecht, wie ich finde.
Mischa Sameli, Senior Webapplication-Entwickler
Zum Aufbau von Navigationsbäumen verwenden wir in der Regel Datenbank seitig eine ID-PID-Struktur. Wie lässt sich die Beziehung ID-ParentID mit dem Hibernate-ORM von ColdFusion 9 elegant abbilden?
Mischa Sameli, Senior Webapplication-Entwickler
Für mich Erstaunliches, aber vermutlich Logisches hat wieder einmal das aktuelles Projekt zutage gebracht. Und zwar musste ich feststellten, dass WHERE-Klauseln in SQL-Statements unerwartete Resultate liefern können.