2012-03-21 4 views
5

У меня есть следующий код:SQLite питон не обновляет таблицу

import sqlite3 

con = sqlite3.connect("testDB") 
cur = con.cursor() 

#cur.execute('CREATE TABLE test_table (id integer primary key, data text)') 
cur.execute('INSERT INTO test_table VALUES (?, ?)', (76, 'MyData')) 

, когда я запускаю этот скрипт не обновляет таблицу. Но когда я делаю ту же самую вставку с использованием командной строки sqlite3 в Linux, она обновляется. Почему это так или есть что-то, что я делаю неправильно?

ответ

10
# Save (commit) the changes 
con.commit() 
+0

con.commit() это должно быть сделано после того, как все будет закончено, или я могу зафиксировать после каждого утверждения con.execute() ??? – user873286

+0

Если другая программа хочет немедленно увидеть данные, вы должны немедленно ее совершить. В противном случае вы можете зафиксировать в конце. – kev

1

Вы пытались совершить после предложения вставки?

+0

con.commit() работать, но con.commit() это должно быть сделано после того, как все будет закончено, или я могу зафиксировать после каждого утверждения con.execute() ??? Каково основное предназначение совершения? – user873286

+0

«commit» состоит в том, чтобы закончить все изменения в вашей таблице ... но если вы хотите вернуться к последнему статусу, вы используете предложение «rollback», –

Смежные вопросы