SQLite3 Python переменные - PullRequest
       0

SQLite3 Python переменные

1 голос
/ 04 апреля 2020

Я написал этот код для базы данных SQLite3 в python:

 i = datetime.datetime.now()
        v_day = i.day
        v_month = i.month
        v_year = i.year
        v_hour = i.hour
        v_minute = i.minute

    cur.execute("""INSERT INTO weather(
                day,month,year,hour,minut,temperature,humidity) VALUES (
                ?,?,?,?,?,?,?),
                (v_day,v_month,v_year,v_hour,v_minute,temp,hum)""")

После попытки он вывел эту ошибку: Файл "store_data.py", строка 68, в main (v_day , v_month, v_year, v_hour, v_minute, temp, hum) "" ") sqlite3.OperationalError: нет такого столбца: v_day Я уже пытался поместить имена переменных в список ЗНАЧЕНИЙ, но я столкнулся с той же ошибкой.

Спасибо за ответ.

Ответы [ 2 ]

1 голос
/ 04 апреля 2020

Ваш кортеж находится внутри вашей строки. Также не следует обозначать столбцы таблицы в запросе. Попробуйте

    cur.execute("INSERT INTO weather VALUES (?,?,?,?,?,?,?)",
                (v_day,v_month,v_year,v_hour,v_minute,temp,hum))
0 голосов
/ 04 апреля 2020

Попробуйте это:

sql = f"""INSERT INTO weather(day,month,year,hour,minut,temperature,humidity) VALUES ({v_day},{v_month},{v_year},{v_hour},{v_minute},{temp},{hum})"""
cur.execute(sql)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...