У меня есть текстовый файл со словами в строке, например:
One Two Three
Four Five Six
Мне нужно получить каждое слово вотдельный столбец базы данных.
Я до сих пор придумал этот код:
connection = sqlite3.connect("test.db")
cursor = connection.cursor()
sql_command = """CREATE TABLE IF NOT EXISTS test (
id VARCHAR(20),
second VARCHAR(20),
third VARCHAR(20),
fourth VARCHAR(20));"""
cursor.execute(sql_command)
query = "INSERT INTO test VALUES (NULL,?,?,?)"
filename = open("test.txt", "r")
with open("test.txt", "r") as filename:
for data in filename:
line = data.split()
print(line)
cursor.execute(query, data.split(' '))
connection.commit()
connection.close()
Я получаю следующее сообщение об ошибке:
Incorrect number of bindings supplied. The current statement uses 3, and there are 1 supplied.
Если я изменю код на:
query = "INSERT INTO test VALUES (NULL,?,NULL,NULL)"
, вся строка записывается в БД:
1|One Two Three||
2|Four Five Six||