«Не все параметры были использованы в операторе SQL» при вставке значений из файла в базу данныхPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 «Не все параметры были использованы в операторе SQL» при вставке значений из файла в базу данных

Сообщение Anonymous »

Я получаю сообщение об ошибке при попытке вставки в таблицу базы данных следующего кода

Код: Выделить всё

import mysql.connector
import re

mydb = mysql.connector.connect(
host="",
user="",
password="",
database ="db"
)
mycursor = mydb.cursor()

sql = "INSERT INTO characters (url, name, disambiguation) VALUES (%s, %s, %s)"
val = []
with open("text.txt","r",encoding="utf-8") as f:
for line in f.readlines():
x = re.findall(r'"(.*?)"', line)
x= x[::-1]
x.append("")
val.append(x)

mycursor.executemany("INSERT INTO characters (name, url, disambiguation) VALUES (%s, %s, %s)", val)
mydb.commit()
Содержимое val выглядит следующим образом:

Код: Выделить всё

[["'Lectron (Earth-12772)", '/wiki/%27Lectron_(Earth-12772)', ''], ["'Selka (Earth-928)", '/wiki/%27Selka_(Earth-928)', ''], ["'Spinner (Earth-616)", '/wiki/%27Spinner_(Earth-616)', ''],...]
Пока запрос DESCRIBE TABLE возвращает следующее:

Код: Выделить всё

('name', 'varchar(255)', 'YES', '', None, '')
('url', 'varchar(255)', 'YES', '', None, '')
('disambiguation', 'varchar(255)', 'YES', '', None, '')
Если есть только три параметра и я передаю все три, я не знаю, почему я получаю сообщение об ошибке.

Подробнее здесь: https://stackoverflow.com/questions/791 ... ues-from-f
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»