Nudge am 08.04.2009

Mehrere MSSQL-Instancen in Squirrel und PHP ansprechen

in PHP, Tipp | Tags: Datenbank, FreeTDS, Instanz, jTDS, Microsoft SQL Server, MSSQL, PHP, Server, Squirrel

Hat man mehrere Instanzen eines MSSQL-Servers auf einer IP laufen, also zum Beispiel auf einem Server, dann stellt sich für die Verbindung von außerhalb automatisch das Problem, die richtige Instanz anzusprechen. Das Vorgehen unterscheidet sich ein wenig, je nach benutzter Technik, wie in PHP oder SQuirreL.

Weiter lesen »

Nudge am 01.04.2009

MySQL Sequence oder integer-Timestamp

in MySQL | Tags: Datenbank, MSSQL, MySQL, Postgresql, Replikation, Routine, Sequenz, Synchronisation, Timestamp, Trigger, Update

Ich suche seit einiger Zeit nach einer bequemen Möglichkeit, einen MSSQL-ähnlichen Timestamp in MySQL zu integrieren.

Im Unterschied zu MySQL benutzt MSSQL nämlich nicht das aktuelle Datum, sondern einen (binär codierten) integer-Wert. Dieser wird kontinuierlich im Laufe des MSSQL-Lebenszyklus hochgezählt. Das sieht erst einmal nicht so schön aus – man weiß also nicht, wann der Datensatz zuletzt angefasst wurde. Dennoch bringt er einen kleinen Vorteil mit: Für einfache Synchronisationsaufgaben braucht man sich nur den letzten abgerufenen Wert zu merken. Erst alle höheren Timestamps müssen neu übertragen werden. Bei MySQL muss man alle Datensätze der letzten Sekunde wieder übertragen, denn eine Sekunde ist im Leben einer Datenbank eine Ewigkeit, da kann viel passieren.

Weiter lesen »

Nudge am 21.10.2008

Böse Falle: Locale-Einstellungen mit PHP und FreeTDS

in PHP | Tags: FreeTDS, Locale, MSSQL, PHP, SQL Server

Wer sein PHP und MSSQL arbeitet, sollte sich stets eine kleine Check-Routine für den Fall eines Software-Updates aufbauen. Darin sollten Abfragen von Konstanten, Datetime und Money- bzw. Float-Werten vorkommen. Denn ein Update des MSSQL-Servers, PHP oder der FreeTDS-Bibliothek kann fatale Folgen haben.

Weiter lesen »

Nudge am 13.09.2008

Bug in MySQL bei LEFT JOIN

in Linux, MySQL | Tags: Bug, Left Join, MSSQL, MySQL, NULL

Also da habe ich echt gesucht, was der Fehler in meinem SQL-Statement war, bis sich herausstellte, dass es sich um einen waschechten MySQL-Bug in Version 5.0.24a handelte. Aber keine Sorge, dieser wurde bereits erkannt und wohl spätestens in Version 5.0.32 behoben. Gefahr erkannt – Gefahr gebannt. 🙂

Worum gings denn da?

Weiter lesen »

Nudge am 22.07.2008

phpmssqladmin im Winterschlaf

in MySQL, PHP | Tags: DBMS, MSSQL, PHP, phpmssqladmin, tdslib

Als Fan von phpmyadmin habe ich mich vor einiger Zeit nach einer ähnlichen Lösung für MSSQL-Datenbanken umgeschaut.

Die gibt es auch – in Form von phpmsadmin. Der Aufbau der Homepage ist extrem an phpmyadmin’s Layout angelehnt. Unter der Haube gibts auch die Möglichkeit, mit JDBC zu arbeiten – damit könnte man eigentlich noch eine ganze Latte anderer Datenbank-Systeme erschlagen.

Ich habe leider noch nicht in den Code geschaut, um zu verstehen, wie die Anbindung intern umgesetzt ist. Auf dem Server haben wir PHP mit der tdslib-Erweiterung ausgestattet, die ebenso eine Konnektivität mit MSSQL erlaubt und mir auch sehr performant erscheint.

Leider ist das Projekt seit ganz schön langer Zeit auf Eis gelegt. Und das bei einem noch recht jungen Entwicklungsstand. Denn bis auf Tabellen und deren Anzahl von Einträgen gibts nicht viel. Der Row-Editor funzt zwar, aber alles ist extrem spärlich gehalten. Schade ist, dass phpmsadmin beim Browsen standardmäßig keine 30 Zeilen, sondern gleich alle ausgibt, was sich bei einer Installation mit knapp 40 Mio Datensätzen einfach unhandlich macht. 😉

Wenn ich mal ganz, ganz viel Laaaaaaaangeweile haben sollte, werde ich ein paar Zeilen beisteuern. Better not watch out.