Код Python, не вставляющий значения в базу данных MySQL

#python #mysql #database #mysql-python #mysql-connector

Вопрос:

Я пытаюсь добавить значения входных данных в базу данных SQL, но она их не добавляет. Когда я использую print(курсор.количество строк, «вставлена запись»), он печатает: «вставлена запись -1» вместо ожидаемого: «вставлена запись 1» и ничего не добавляет в таблицу базы данных(да, база данных и все остальное написано правильно). Что я делаю не так?

Питон:

 
import mysql.connector

db = mysql.connector.connect(
    host="127.0.0.1",
    user="root",
    password=[password]
)

cursor = db.cursor()

usernameEntry = input("Enter username: ")
emailEntry = input("Enter email: ")
passwordEntry = input("Enter password: ")

query = "USE pythonlogin; INSERT INTO pylogin (username, email, password) VALUES (%s, %s, %s)"
values = (usernameEntry, emailEntry, passwordEntry)
cursor.execute(query, values, multi=True)
db.commit()
print(cursor.rowcount, "record inserted.")
  
 

Таблица MySQL(пилогин):

введите описание изображения здесь

Вывод:

введите описание изображения здесь

Комментарии:

1. У вас не может быть нескольких запросов в одном вызове cursor.execute() . Вы можете либо указать базу данных в connect() , либо выполнить USE pythonlogin как отдельный вызов.

2. Спасибо, это сработало!