Heim > Datenbank > MySQL-Tutorial > Wie behandelt man Apostrophe in MySQL-Einfügeabfragen richtig, um Syntaxfehler zu verhindern?

Wie behandelt man Apostrophe in MySQL-Einfügeabfragen richtig, um Syntaxfehler zu verhindern?

Mary-Kate Olsen
Freigeben: 2024-10-24 04:33:02
Original
432 Leute haben es durchsucht

How to Correctly Handle Apostrophes in MySQL Insert Queries to Prevent Syntax Errors?

Umgang mit Apostrophen in MySQL-Einfügeabfragen

In MySQL können bei Einfügeabfragen, die Apostrophe (einfache Anführungszeichen) enthalten, Syntaxfehler auftreten. Wenn der Fehler „Sie haben einen Fehler in Ihrer SQL-Syntax …“ auftritt, insbesondere in Bezug auf Apostrophe, gibt es Lösungen, um eine erfolgreiche Dateneinfügung sicherzustellen.

Die wichtigste Lösung besteht darin, die Apostrophe mit einem Backslash () zu maskieren. Charakter. Beispielsweise müsste die Zeichenfolge „Kellog's“ als „Kellogg's“ geschrieben werden. Indem MySQL den Apostroph mit einem Backslash maskiert, interpretiert es das folgende Zeichen als Literal und nicht als Syntaxindikator.

Darüber hinaus ist es ratsam, die Funktion mysql_real_escape_string() von MySQL zu verwenden, wenn Daten für das Einfügen vorbereitet werden. Diese Funktion maskiert Sonderzeichen, einschließlich Apostrophe, automatisch und bietet so einen umfassenden Schutz vor potenziellen SQL-Injections. Betrachten Sie das folgende Beispiel:

<code class="php">function insert($database, $table, $data_array) {
    $mysql_connect = connect_to_database();
    mysql_select_db($database, $mysql_connect);

    foreach ($data_array as $key => $value) {
        $tmp_col[] = $key;
        $tmp_dat[] = "'" . mysql_real_escape_string($value) . "'"; // Escaping
    }

    $columns = join(',', $tmp_col);
    $data = join(',', $tmp_dat);

    $sql = 'INSERT INTO ' . $table . '(' . $columns . ')VALUES(' . $data . ')';
    $result = mysql_query($sql, $mysql_connect);

    if (!$result) {
        echo 'MySQL Update Error: ' . mysql_error($mysql_connect);
        $result = '';
    } else {
        return $result;
    }
}</code>
Nach dem Login kopieren

Mit dieser Methode können Sie Daten, die Apostrophe enthalten, ohne Syntaxfehler oder Sicherheitslücken in MySQL-Tabellen einfügen.

Das obige ist der detaillierte Inhalt vonWie behandelt man Apostrophe in MySQL-Einfügeabfragen richtig, um Syntaxfehler zu verhindern?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage