2014-02-23 64 views
1

我正在使用Python通過SQLite3創建表,我得到的消息告訴表已經在解釋器中創建了表,但是當在cmd中查看錶時,沒有這樣的表。這裏是我的代碼:使用Python和SQLite創建表,沒有這樣的表

import sqlite3 as db 

conn = db.connect('test.db') 
cursor = conn.cursor() 
cursor.execute("create table films(title text, year text, director text)") 
print("tables added") 

在解釋我得到:

>>> ================================ RESTART ================================ 
>>> 
tables added 

但通過SQLite的在cmd中查看數據庫,當我告訴:

Error: no such table: films 

回答

1

確保運行腳本和翻譯員同一目錄。否則,他們會參考兩個不同的數據庫文件。

0

你的代碼只是工作:-)我想有什麼問題你如何試圖訪問你的表:

sucre:~ rlucia$ python sqltable.py 
tables added 
sucre:~ rlucia$ sqlite3 test.db 
SQLite version 3.8.0.2 2013-09-03 17:11:13 
Enter ".help" for instructions 
Enter SQL statements terminated with a ";" 
sqlite> PRAGMA table_info([films]); 
0|title|text|0||0 
1|year|text|0||0 
2|director|text|0||0 
sqlite> ^D 
sucre:~ rlucia$ 
0

你缺少conn.commit()。因此,您的新表格不會保存,並且SQL查看器無法找到該表格。