Не удается ввести запись в MySQL DB в Python - PullRequest
1 голос
/ 30 июня 2019

Я не могу ввести запись в базу данных mysql.

import mysql.connector

mydb = mysql.connector.connect(
    host = "localhost",
    user = "root",
    password = "root@123",
    database = "testdb",
    )

print(mydb)

my_cursor = mydb.cursor()
sql_query = ("INSERT INTO users (name,email,age) VALUES (%s, %s, %s)")
record1 = ('Tim','Tim123',45)
records = [("Ankit","ankit345",30),
    ("shubhra","shubhra567",29),
    ("anita","anit789",55),]
my_cursor.execute(sql_query,records)
mydb.commit()



mydb = mysql.connector.connect(
    host = "localhost",
    user = "root",
    password = "root@123",
    database = "testdb",
    )

print(mydb)

my_cursor = mydb.cursor()
sql_query = ("INSERT INTO users (name,email,age) VALUES (%s %s %s)")
record1 = ('Tim','Tim123',45)
my_cursor.execute(sql_query,record1)
mydb.commit()

Администратор @ DESKTOP-60U78C6 MINGW64 / c / mysql $ python db1.py Traceback (последний вызов был последним): Файл "db1.py", строка 15, в my_cursor.execute (sql_query, record1) Файл "C: \ Users \ Администратор \ AppData \ Local \ Programs \ Python \ Python37-32 \ lib \ site-packages \ mysql \ connector \ cursor.py", строка 569, в файле execute self._handle_result (self._connection.cmd_query (STMT)) Файл "C: \ Users \ Администратор \ AppData \ Local \ Programs \ Python \ Python37-32 \ lib \ site-packages \ mysql \ connector \ connection.py", строка 553, в cmd_query result = self._handle_result (self._send_cmd (ServerCmd.QUERY, запрос)) Файл "C: \ Users \ Администратор \ AppData \ Local \ Programs \ Python \ Python37-32 \ lib \ site-packages \ mysql \ connector \ connection.py", строка 442, в _handle_result поднять error.get_exception (пакет) mysql.connector.errors.ProgrammingError: 1064 (42000): в синтаксисе SQL имеется ошибка; проверьте руководство, соответствующее вашей версии сервера MySQL, для правильного синтаксиса, чтобы использовать около '45) 'в строке 1

1 Ответ

1 голос
/ 30 июня 2019

Вам не хватает запятых между значениями:

sql_query = ("INSERT INTO users (name,email,age) VALUES (%s, %s, %s)")
# Here ----------------------------------------------------^---^
...