SQL und prepared Statements

Bisher hab ich eigentlich fast immer meine SQL-Befehle direkt als einen String zusammengestellt und den SQL-Befehl mittels adoDB ausgeführt. Mir war zwar bekannt, dass es “prepared Statements” gibt, verwendet hab ich sie aber selten. Wenn man daran denkt, die eingefügten Werte zu maskieren (Stichwort SQL-Injection), hielt ich das bisher auch für kein Problem. Prepared Statements waren für mich also bisher genau dann sinnvoll, wenn der SQL-Befehl vorab kompiliert werden soll, was bei wiederholter SQL-Ausführung (Schleifen) sinnvoll ist.

Nun bin ich aber dabei, stärker mit DB2 zu arbeiten. Und da kann es passieren, dass ein solch erstellter SQL-Befehl nicht funktioniert. Das Problem ist, dass DB2 sich weigert Zeichenketten mit mehr als 32kb zu verarbeiten. Mit Hilfe von prepared Statements ist das aber kein Problem. Interessanterweise bietet DB2 sogar die Funktion an, direkt eine Binär-Datei (Bild) über prepared Statements einzufügen, ohne dass diese Datei vorher in PHP gelesen werden muss. Das ist mal ein echter Vorteil!

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.