Guten Tag,
Ich hab grad ein SQL Problem.
Das Problem ist ,wenn in links_text ein Anführungszeichen ist funktioniert das ganze NICHT. Wie kann ich das Reparieren?
Code:
string sql2 = Convert.ToString("UPDATE Texte SET " + spalte + "='@" + links_text + "', " + spalte_sidebar + "='" + sidebar.body.innerHTML + "' WHERE ID='0'");
Hallo c_sharp-programmer,
Wie kann ich das Reparieren?
Durch [Artikelserie] SQL: Parameter von Befehlen
Gruß,
Michael
Wie aber genau? Könntest du mir vielleicht den Code geben?
Ich glaube nicht, dass du da noch groß Code bekommst. In dem verlinkten Artikel steht nämlich der Code ziemlich exakt drin, den man benötigt um mit Parametern zu arbeiten. Mehr geht eigentlich nicht. Code vorbeten ist der falsche Weg.
Wenn du in deiner Situation ein ' einfügen willst muss dieses Escaped werden. Dies ist aber das Problem bei selbst zusammengewuschtelte SQL-Statements, denn dort werden diese nicht escaped, bzw nicht bedacht. Dein Statement ist überhaupt nicht sicher (SQL-Injection).
Könntest du mir vielleicht den Code geben
4b: [Hinweis] Wie poste ich richtig?
Bitte zeig etwas mehr Eigeninitiative. Im vorher verlinkten Beitrag steht alles was du wissen musst.
Gruß,
Michael
ok. Kannst du mir sagen wo das genau steht?
da steht nur:
Problem: Hochkomma im SQL-String
string strSQLUpdate = "UPDATE Kundenstamm "
+ "SET KDNAME = '" + strKDNAME + "' WHERE KDKDNR = '" + strKDKDNR + "'";
was muss ich tun wenn ich ein hochkamma habe?
und hochkamma ist was anderes als " .
Wie xxMUROxx schon geschrieben hat, wird wieder mal gegen die bekannten Postingregeln verstoßen. Geschlossen da wiederholt auf unsere Regeln hingewiesen (nicht nur in diesem Beitrag) und trotzdem nicht beachtet.