我事先向您提出这样的基本问题表示歉意,但我是SQlite3的新手,因此无法启动。我试图建立一个表的数据库。我使用以下代码构建表。
import sqlite3
conn = sqlite3.connect('example.db')
c = conn.cursor()
c.execute('''CREATE TABLE mytable
(start, end, score)''')
Run Code Online (Sandbox Code Playgroud)
但是,每当我尝试更新或访问该表时,它似乎都不存在或者可能存在于其他数据库中。我也尝试创建一个名为example.mytable的表,但出现错误:sqlite3.OperationalError:未知数据库示例
我想念什么?谢谢
我认为插入后需要提交(架构更改,例如新表应自动提交)。我建议您也将完整路径添加到数据库中,以确保下次访问同一位置。
这是您代码的扩展:
import sqlite3
def create():
try:
c.execute("""CREATE TABLE mytable
(start, end, score)""")
except:
pass
def insert():
c.execute("""INSERT INTO mytable (start, end, score)
values(1, 99, 123)""")
def select(verbose=True):
sql = "SELECT * FROM mytable"
recs = c.execute(sql)
if verbose:
for row in recs:
print row
db_path = r'C:\Users\Prosserc\Documents\Geocoding\test.db'
conn = sqlite3.connect(db_path)
c = conn.cursor()
create()
insert()
conn.commit() #commit needed
select()
c.close()
Run Code Online (Sandbox Code Playgroud)
输出:
(1, 99, 123)
Run Code Online (Sandbox Code Playgroud)
关闭程序后,如果我登录到SQLite数据库,则数据仍然存在。
| 归档时间: |
|
| 查看次数: |
10916 次 |
| 最近记录: |