Korrigierter Titel: Fehler „Abgeschnittener falscher DOUBLE-Wert' im MySQL Connector mit Python erklärt und wie man ihn behebt
P粉021708275
P粉021708275 2023-09-12 14:51:28
0
1
472

Erste Fehlermeldung:

mysql.connector.errors.DataError: 1292 (22007): 截断错误的DOUBLE值: \----------------------------------------------------------------------------------------------

Ich habe viele Male versucht, online Lösungen zu finden, und habe gesehen, dass andere Benutzer auf das gleiche Problem gestoßen sind.

Leider hat das mein Problem nicht gelöst. Ich habe durch Googeln eine ähnliche Lösung für mein Problem gefunden, aber auch das hat nicht geholfen.

Okay, das Problem ist, dass ich ständig die folgende Fehlermeldung von Pycharm erhalte:

mysql.connector.errors.DataError: 1292 (22007): 截断错误的DOUBLE值:

Was genau bedeutet das?

Stimmt etwas mit meiner Datenbank nicht?

Was ist das Problem?

Das ist die Tabelle, die ich erstellt habe:

CREATE TABLE `employee` ( `emp_id` INTEGER NOT NULL, `emp_name` VARCHAR (17) NOT NULL, `emp_last_name` VARCHAR (17) NOT NULL, `emp_email` VARCHAR (17) NOT NULL, `emp_status` VARCHAR (17) NOT NULL, PRIMARY KEY (`emp_id`) );

Ich möchte einen Benutzer mit Python aktualisieren.

Der Code lautet wie folgt:

def update function(emp_id, emp_name, emp_last_name, emp_email, emp_status): emp_data = mysqlconn.cursor() sql_update_query = ("UPDATE employee set emp_name = %s, emp_last_name = %s, emp_email = %s, emp_status = %s WHERE emp_id = %s") updated_data = (emp_id, emp_name, emp_last_name, emp_email, emp_status) emp_data.execute(sql_update_query,updated_data,) mysqlconn.commit() print("Data Updated")

Ich sehe keine Grammatikfehler.

  • Sah andere Lösungen für ähnliche Probleme auf Stackoverflow.

    Habe eine Google-Suche mit der falschen Kodierung durchgeführt.

    Meine Tabelle auf MySQL geändert.

P粉021708275
P粉021708275

Antworte allen (1)
P粉674757114

您的数据中有错误的顺序:

def update function(emp_id, emp_name, emp_last_name, emp_email, emp_status): emp_data = mysqlconn.cursor() sql_update_query = "UPDATE employee set emp_name = %s, emp_last_name = %s, emp_email = %s, emp_status = %s WHERE emp_id = %s" updated_data = ( emp_name, emp_last_name, emp_email, emp_status, emp_id) emp_data.execute(sql_update_query,updated_data) mysqlconn.commit() print("Data Updated")

emp_id的占位符是最后一个,但您将值放在了第一个位置,所以您需要进行更改。此外,我删除了一些不必要的括号和逗号。

    Neueste Downloads
    Mehr>
    Web-Effekte
    Quellcode der Website
    Website-Materialien
    Frontend-Vorlage
    Über uns Haftungsausschluss Sitemap
    Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!