2017-02-02 11 views
0

Я не могу показаться, чтобы выяснить, как параметризовать множество различных форматов (как реальных, так и строки в том же запросенесколько параметров разных типов sqlite3 питона

conn = sqlite3.connect(dbfile) 
c = conn.cursor() 

def update_data(text,var2): 
    c.execute("UPDATE T SET T12M = ? WHERE date = ?", (var2, text)) 
    conn.commit() 

Это работает, если я жесткий код, что я хочу, но Я не могу заставить переменное число/текст работать. Для этого это работает, но я хочу передать переменные числа/строки: UPDATE T SET T12M = 10 WHERE date = '9/28/2015';

+0

Что вы имеете в виду, когда говорите, что это не работает? –

+0

Вы уверены, что эта дата представлена ​​в таблице? –

+0

Я имею в виду, что он не обновляет значение в столбце T12M вообще. Да Если я набираю UPDATE T SET T12M = 10 WHERE date = '9/28/2015' Это работает. – user41141

ответ

-1

Попробуйте использовать фигурные скобки и .format():

c.execute("UPDATE T SET T12M = {} WHERE date = {}".format(var2, text)) 
+0

Кажется, не работает – user41141