我的本地驱动器中有一个sqlite数据库。我想要用来创建组合表的架构很少
我与Sqlite的初始Python连接如下:
import sqlite3
# Create a SQL connection to our SQLite database
con = sqlite3.connect("dataset.sqlite")
cur = con.cursor()
我这样做是为了在数据库上执行sql并创建一个表
sql= """
create table IF NOT EXISTS requests_user_info as
select a.request_id, a.user_id,b.email, a.category_id,c.name as category_name,
a.location_id, d.name as location_name,a.creation_time as Request_time
from requests as a
left join
users as b
left join
categories as c
left join
locations as d
on a.user_id=b.user_id
and
a.category_id=c.category_id
and
a.location_id=d.location_id
"""
cur.execute(sql)
但它一直在运行,似乎并没有结束。那么我想到直接访问终端
中的sqlite数据库我在终端中启动sqlite db
sqlite3 dataset.sqlite
它可以访问数据库。但是当我在没有python部分的情况下运行相同的查询时,光标会一直闪烁并且永远不会停止。
稍后我从另一个终端窗口检查数据库是否已被锁定。该表也未创建。知道如何解决这个问题吗?