小编lou*_*vel的帖子

PostgreSQL DROP TABLE 查询冻结

我正在编写代码以在 Anaconda 的 Spyder 环境中用 Python 创建 GUI。在这段代码中,我使用了 PostgreSQL 数据库,因此我使用了 psycopg2 数据库适配器,以便我可以直接从 GUI 进行交互。

代码太长,无法在此处发布,因为它超过 3000 行,但总而言之,我与数据库交互没有问题,除非我尝试删除表。

当我这样做时,GUI 框架变得无响应,drop table查询不会删除预期的表,也不会抛出任何错误或任何其他类型的内容。

在我的代码中,所有导致表被删除的操作都通过函数 ( DeleteTable)进行处理。当我调用这个函数时,没有问题,因为我之前插入了几个打印语句,确认一切正常。当我用cur.execute(sql)代码行执行语句时会出现问题。

有人能弄清楚为什么我的桌子不会掉吗?

def DeleteTable(table_name):

    conn=psycopg2.connect("host='localhost' dbname='trial2' user='postgres'   password='postgres'")
    cur=conn.cursor()
    sql="""DROP TABLE """+table_name+""";"""
    cur.execute(sql)
    conn.commit()
Run Code Online (Sandbox Code Playgroud)

python postgresql wxpython psycopg2

2
推荐指数
1
解决办法
2908
查看次数

标签 统计

postgresql ×1

psycopg2 ×1

python ×1

wxpython ×1