Hallo zusammen, ich habe unten gezeigten jsp-Code, der auch in die Oracle-DB einfügt, jedoch wird bei der Eingabe von z.B. test im Feld ename immer ein Leerzeichen for dem Wort test in die DB geschrieben (ename ist vom Typ String), wie kann ich dass vermeiden?
Vielen Dank.
m_lyxs
CODE:
DB Zugriff mittels JSP Einfügen in der Tabelle emp
Zwischen den einfachen und den doppelten Anführungszeichen (’ und ") ist jeweils ein Leerzeichen.
Wenn du die entfernst sollte es gehen.
Die Zeile muss somit folgendermaßen aussehen:
stmt.executeUpdate („INSERT INTO emp („EMPNO“,„ENAME“) VALUES (’“+firstParam+"’,’"+lastParam+"’)");
Grüße
Wolf G. Beckmann
Hallo zusammen, ich habe unten gezeigten jsp-Code, der auch in
die Oracle-DB einfügt, jedoch wird bei der Eingabe von z.B.
test im Feld ename immer ein Leerzeichen for dem Wort test in
die DB geschrieben (ename ist vom Typ String), wie kann ich
dass vermeiden?
Vielen Dank.
m_lyxs
Dynamische SQL ist nie einfach.
Ich schreibe mir das generierte Statement (fast) immer in eine Variable, damit ich mir beim debuggen das Ergebnis ansehen und evtl. mit cut und paste im SQL-Developer ausführen kann.
Das Einsetzen von Variablen so wie du es machst öffnet auch tür und Tor für eine sql-injection oder aber lässt es einfach knallen, wenn bei der Eingabe im Namen ein ’ vorkommt.
Oracle bietet die Möglichkeit ein Statement mit Variablen parsen (vorkompilieren) zu lassen und es danach (auch mehrfach) mit übergebenen Variablen auszuführen. (die Syntax dafür müsste ic haber auch erst nachschlagen.