Hallo!
Ich mache SQL Inserts über java.sql.PreparedStatements in eine MySQL DB.
Jetzt bin ich auf folgendes Problem gestoßen.
sql="INSERT INTO person(email, pwd) VALUES(?,?);
PreparedStatement ps=connection.prepareStatement(sql);
ps.setString(1, "meineemail@example.com");
ps.setString(2,"MD5('meinpwd')");
Jetzt wird natürlich in das Attribut pwd wirklich "MD5('meinpwd')" reingeschrieben und nicht die MySQL Funktion MD5 aufgerufen.
Gibt es eine Möglichkeit den Funktionsaufrufn MD5 irgendwie über das PreparedStatement reinzubekommen?
In der Klasse PreparedStatement hab ich nichts passendes gefunden. Hab ich etwas übersehen?
Ich suche sowas wie ps.setIrgendwasDasNichtpeparsedWird(..)
Ich könnte natürlich MD5('asdf') direkt in den SQL Code reinschreiben ohne PreparedStatement. Das ist aber nur umständlich möglich, da das SQL Statement von einem Framework zusammengebaut wird. Dieses Framework möchte ich nur ungern anrühren.
mfg
frafu