Mrz 22

MSSQL

Work 22.03.2008

So, jetzt muss ich meinen Frust ueber dieses Achsotolle RDBMS mit Namen „MSSQL“ mal rauslassen.
Wie kann es sein, dass eine Verbindung via DBD::ODBC auf eine MSSQL nur 1 (In Worten: EIN) aktives Statement gleichzeitig zulässt ? Neben einigen anderen Problemchen, war das nun der Grund auf DBD::ADO zu wechseln. Mal abgesehen von dem grausigen SQL-Syntax dieses Karteikastens, kann mir mal jemand sagen wieso man bei ADO die Bind-Parameter nicht durchnummerieren kann ??? Da scheint nur ein „?“ zu funktionieren.
Entweder mir fehlt noch der Durchblick bei dem MS-Gedönse, oder das Teil ist schlecht per Design…

Genug herumgefrustet. Wenn die naechsten Probleme kommen (und die kommen bestimmt), gibt es hier ein Update…

[Update 1]: rownum (aus Oracle): nicht vorhanden.
Limit (aus MYSQL): ersetzt man durch „top“ direkt hinter dem SELECT

[Update 2]: MERGE (aus Oracle): nicht vorhanden, also haendisches Merging…

[Update 3]: FUNCTION Based Indizes: nicht vorhanden.

[Update 4]: Variablen mit NULL-Werten via ADO binden: geht nicht

[Update 4b]: Mehrere Statements mit ODBC gleichzeitig bearbeiten: Fehlanzeige 🙁

[Update 5]: Die DB verhält sich unter Win2003 US anders als unter Win2003 GERMAN … Suspekt

[Update 6]: Ein Ordentliches Handling von Datumsfeldern a la „to_date“ oder „to_char“ mit relativ freien Formatierungsstrings ist nicht drin. Stattdessen kryptische Numerische Konstanten die gerade mal eine Hand voll vorformatierten Datumsformaten zulassen. Wenn das mal kein Beinbruch ist… oha!

[Update 7]: Strings mit Nullen oder anderen Chars auffuellen (unter ORA mit LPAD/RPAD): Nicht moeglich. Ein Umweg ueber selbst gestrickte Funktionen waere hier angesagt…

Leave a Reply

You must be logged in to post a comment.

preload preload preload