INSERT String enthält ' wie kann man das Escapen?

Status
Nicht offen für weitere Antworten.

DarkNemesis

Mitglied
Mein INSERT String wird aus einer CSV gelesen und enthält schon mal sowas wie "dumm's" im String, was MySQL bei meinem INSERT so garnicht schmeckt.

Gibt es da eine möglichkeit es zu Escapen oder ähnliches?

So sieht der code teil bei mir aus:
Code:
				Connection conn = null;
				String treiber = "com.mysql.jdbc.Driver"; 
				String url = "jdbc:mysql://localhost:3306/csv_test"; 
				String userName = "root";
				String password = "root";

......

String SqlInsert = "INSERT INTO `report_productgroup` (`Product group ID`, `Parent product group ID`, `Language`, `Short Description`, `Language (DE)`, `Short Description (DE)`, `Long Description (DE)`) VALUES ('"+daten[0]+"', '"+daten[1]+"', '"+daten[2]+"', '"+daten[3]+"', '"+daten[4]+"', '"+daten[5]+"', '"+daten[6]+"') ";

.....

Class.forName ( treiber ).newInstance (); 
					conn = DriverManager.getConnection (url, userName, password);
 
was schmeckt ihm denn nicht? hast du versucht, es zu escapen? man könnte auch alle ' durch nichts ersetzen.

grüße
 
Durch nichts ersetzen wäre keine Lösung, was ihm nicht geschmeckt hat waren eben die ' im String welche ich dann mit replaceALL hab durch \\\\' escapen lassen, mein anfänglicher fehler war es nur mit \\' zu versuchen 😉
 
Status
Nicht offen für weitere Antworten.

Neue Themen


Zurück
Oben