#1 31. März 2011 [SQL] Problem mit String Hi Leute, ich arbeite derzeit an einem Projekt. Dazu möchte ich jetzt die Daten aus der Datenbank bekommen. Das ist der SELECT: sql = "SELECT * FROM 1_messe WHERE LFD_NR='"+lfd_nr+"'"; Das Problem ist jetzt das in der Variable lfd_nr auch ein ' steht... also so z.B.: ILS'11 Klappt so halt nicht. Weiß da jemand eine Lösung? mfg labmx + Multi-Zitat Zitieren
#2 31. März 2011 AW: [SQL] Problem mit String schreib doch einfach in die Datenbank statt ILS'11 einfach ILS\'11 + Multi-Zitat Zitieren
#3 31. März 2011 AW: [SQL] Problem mit String Ersetz halt vorher in der Variable ' mit \' . Stichwort: Replace (http://dev.mysql.com/doc/refman/5.0/en/string-syntax.html) Liste mit Escape-Sequenzen für MySQL-Querys (String.Replace Method) Syntax für String.Replace Funktion in .NET Oder du schreibst dir direkt eine Funktion für das generelle Escapen von den Querys: Code: public static string MySqlEscape(this string usString) { if (usString == null) { return null; } // SQL Encoding for MySQL Recommended here: // http://au.php.net/manual/en/function.mysql-real-escape-string.php // it escapes \r, \n, \x00, \x1a, baskslash, single quotes, and double quotes return Regex.Replace(usString, @"[\r\n\x00\x1a\\'""]", @"\$0"); } wäre in deinem Fall: Code: sql = MySqlEscape("SELECT * FROM 1_messe WHERE LFD_NR='"+lfd_nr+"'"); (Continuum Drift - Escape MySQL Queries in .NET (C#)) + Multi-Zitat Zitieren