使用Python和SQLite创建表,没有这样的表

时间:2014-02-23 11:47:27

标签: python sql python-3.x sqlite

我正在使用Python通过SQLite3创建一个表,我被告知已经在解释器中创建了表,但是在查看cmd中的表时,没有这样的表。这是我的代码:

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

但是当我在cmd中通过SQLite查看数据库时,我会被告知:

Error: no such table: films

3 个答案:

答案 0 :(得分:1)

确保在同一目录中运行脚本和解释器。否则他们会引用两个不同的db文件。

答案 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$ 

答案 2 :(得分:0)

你缺少conn.commit()。因此,您的新表未保存,SQL查看器无法找到该表。