У меня есть несколько txt файлов в каталоге, и я хочу вставить их в mysql; содержимое каждого файла должно занимать строку. В MySQL у меня есть 2 столбца: ID (auto increment) и LastName (nvarchar (45)). Однако, когда я запускаю следующий код, я получаю сообщение об ошибке (1054). Что я здесь делаю неправильно?
import MySQLdb
import sys
import os
result = os.listdir("path")
path="dir_path";
for x in result:
db = MySQLdb.connect("localhost","root","password","myblog")
cursor = db.cursor()
file = open(path+x, 'r')
file_content = file.readline()
file.close()
cursor.execute('INSERT INTO clamp_test VALUES(default,file_content)')
db.commit()
db.close()
Переменные не расширяются внутри строк, вам нужно использовать подготовленный оператор с переменной в качестве параметра.
cursor.execute('INSERT INTO clamp_test VALUES(default,%s)', (file_content,))