为什么不能从sqlite3上的数据库中删除?

时间:2018-09-03 15:44:36

标签: python sqlite

@app.route("/delete/<id>", methods=['POST'])
def remove(id):

    connection = sqlite3.connect('database.db')
    cur = connection.cursor()

    cur.execute('Delete from query_database where id == ?' (id,))
    cur.close()
    return ('status.HTTP_200_OK')

鉴于ID,我想删除数据库中的行。 例如:

127.0.0.1:5002/delete/1

我遇到的错误是:

File "api_calls.py", line 65, in remove
    cur.execute('Delete from query_database where id == ?' (id,))
TypeError: 'str' object is not callable
127.0.0.1 - - [03/Sep/2018 18:33:56] "POST /delete/1 HTTP/1.1" 500 -

2 个答案:

答案 0 :(得分:3)

看起来您在cur.execute行中的字符串之后和(id,)之前缺少逗号。尝试使用以下

cur.execute('Delete from query_database where id == ?', (id,))

答案 1 :(得分:-1)

使用Django,要删除服务器内部的数据库,请删除模型,然后运行迁移和makemigrations。 要删除记录,您需要通过表单并发布请求。 希望对您有帮助....