Hi und zwar versuche ich gerade mit com.mysql.jdbc.Driver was in meine Datenbank zu schreiben. Problem ist, er meckert mir die ganze Zeit die Gänsefüsschen an, und ich weiß nicht wirklich den Syntax. Wie funktioniert das denn? String sql = "INSERT INTO test(vara, varb) VALUES ("hallo","hallo")"; Danke
Mit '\' escapen:
1 | String sql = "INSERT INTO test(vara, varb) VALUES (\"hallo\",\"hallo\")"; |
verwende bitte gleiche Prepared sql, sonst handelst du dir nur Probeleme ein. Ich weiss zwar nicht wie es mit java geht, aber das sollte sich finden lassen. SQlPrepeare("INSERT INTO test(vara, varb) VALUES (?,?)"); SetParameter(1, "test1"); SetParameter(2, "test2"); SQLExec();
Peter II schrieb: > verwende bitte gleiche Prepared sql, sonst handelst du dir nur > Probeleme ein. Ich weiss zwar nicht wie es mit java geht, aber das > sollte sich finden lassen. > > SQlPrepeare("INSERT INTO test(vara, varb) VALUES (?,?)"); > SetParameter(1, "test1"); > SetParameter(2, "test2"); > SQLExec(); PreparedStatement heisst die Klasse in java
leerzeichen fehlt for WHERE und BITTE nimm PreparedStatements, alles andere ist ein riesen sicherheitsproblem...
Wofür ist das PreparedStatement denn gut? Das ist eigentlich eine PrivateAnwendung die Hausintern laufen soll, also nichts Sicherheitskritisches
Okay schon gelesen, werde es mal einbauen, ein bisschen übung schadet ja nicht.
Echte Vorteile haben PreparedStatements aus technischer Sicht erst wenn die Abfrage mehrfach ausgeführt wird. Praktisch ist es aber so, das in fast allen Fällen der Overhead welcher entsteht, auch wenn die Abfrage nur einmal ausgeführt wird, vernachlässigbar ist und die sonstigen Vorteile wie verhindern von Injections und übersichtlicherer Code und vorallem keine Gedanken machen wie Datentypen repräsentiert werden (das macht der JDBC Treiber) überwiegen.
1 | PreparedStatement stm = con.prepareStatement("INSERT INTO test(vara, varb) VALUES (?, ?)"); |
2 | stm.setString(1, "test1"); |
3 | stm.setString(2, "test2"); |
4 | stm.executeUpdate(); |
http://download.oracle.com/javase/1.4.2/docs/api/java/sql/Connection.html#prepareStatement%28java.lang.String%29 http://download.oracle.com/javase/1.4.2/docs/api/java/sql/PreparedStatement.html
Hallo, ich bin noch relativ unwissend in diesem Gebiet, könnte mir das eventuel mal jemand erklären? Ich bin außerdem noch etwas jünger, also wenn jemand Gedult dazu hat - wäre nett, wenn ihr euch mal melden könnt. Habe auch Skype: qwertzlezplay Danke schonmal, Stefan
Wie wäre es, wenn Du Dir einfach eins der vielen Tutoriale reinziehst, wie z.B. http://docs.oracle.com/javase/tutorial/jdbc/basics/ Klein bißchen Datenbankwissen solltest Du aber schon haben.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.