Mailinglisten-Archive |
> > Ich hoffe diese Unterschiede wirken sich nicht dramatisch auf > > simple SQL-Abfragen aus. > > Die Unterschiede zwischen Datenbanken können ziemlich dramatisch sein. > Das gilt insbesondere dann, wenn man etwas anderes als die einfachsten > Datentypen verwendet. Zum Beispiel gehen Postgres und MySQL vollkommen > unterschiedlich an die Verarbeitung von Datumsangaben heran und liefern > auch vollkommen unterschiedliche Funktionen zur Datumsverarbeitung. Ebenso > treten Unterschiede bei maximalen Stringlängen, den verschiedenen > Stringfunktionen, regulären Ausdrücken und an anderer Stelle auf. > > Dazu kommen dann noch weitergehende Unterschiede in der Leistungsfähigkeit > (MySQL: keine Subselects, keine Foreign Keys/References, keine Transaktionen; > Postgres: keine Foreign Keys/References) und schließlich Unterschiede bei > den Limits (MySQL: Keine API für partielle BLOBS, alle Datenbanken: > unterschiedliche Obergrenzen für maximale Spaltenbreite, Anzahl Spalten, > Größe DB und so weiter). > > > Gibt es nicht eine rudimentäre Quintessenz von SQL, die von allen > > verbreiteten DB einheitlich unterstützt wird? > > Effektiv nicht. Es gibt einen SQL92-Standard, der aber weder von MySQL > noch von Postgres erreicht wird, andererseits an anderer Stelle aber > überboten wird. Kommerzielle Datenbanken sind im Allgemeinen eine > Obermenge von SQL92 mit einem optionalen Kastrationsmodus. Eine Datenbank > die ausschließlich SQL 92 kann, will man aber auch nicht haben. > > Kristian Bei entsprechender Konzeption der DB könnte ich die von mir verwendeten Datentypen komplett auf Strings beschränken. Die Funktionaltität, die ich bei Datumsangaben brauche ist minimal - Diese könnte ich auch im yyyymmdd-Format als String bzw. Integer ablegen. Stellt sich noch die Frage nach der maximalen Größe der Strings. Bei ca. 500 Zeichen sollte dies aber auch kein Problem für eine DB darstellen. Komplexere SQL-Abfragen könnte man auch als workaround in mehrere einfachere aufzuspalten sein. Ich hoffe mit diesen Spezifikationen keine DB ins Schwitzen zu bringen und maximale Kompatibilität zu erreichen. Thomas:-)
php::bar PHP Wiki - Listenarchive