python - Sqlite 3:打开数据库时出错提供的绑定数量不正确。当前语句使用 1,提供了 4 个
问题描述
我已经尝试在名称后添加逗号和“值”中的问号,并且我的括号出现语法错误。
@app.route("/Disease/new", methods = ["POST"])
def addDisease():
newDisease = {}
conn = None
try:
jsonPostData = request.get_json()
Name = jsonPostData["Name"]
conn = sqlite3.connect("./dbs/ContactTracer.db")
conn.row_factory = sqlite3.Row
sql = """
INSERT INTO Disease(Name) VALUES(?)
"""
cursor = conn.cursor()
cursor.execute(sql, (Name))
conn.commit()
sql = """
SELECT Disease.ID, Disease.Name
From Disease
Where Disease.ID = ?
"""
cursor.execute(sql,(cursor.lastrowid,))
row = cursor.fetchone()
newDisease["ID"] = row["ID"]
newDisease["Name"] = row["Name"]
except Error as e:
print(f"Error opening the database{e}")
abort(500)
finally:
if conn:
conn.close()
return newDisease
解决方案
删除()
并检查是否INSERT
成功
cursor.execute(sql, Name)
...
if cursor.lastrowid:
cursor.execute(sql, cursor.lastrowid)
推荐阅读
- c# - 无法在模态窗口中执行任何操作
- amazon-web-services - 在 AWS 任务中运行两个 docker 映像
- continuous-integration - Teamcity & Udeploy 持续集成和部署
- c++ - 为什么当我实现以 2^20 为底的基数排序以对大小为 500 万的数组进行排序时,该程序会陷入无限循环?
- python - 在 Python 中合并 JSON,同时保留唯一的键并覆盖公共键
- .htaccess - 基于正则表达式的两个域之间的重定向
- docker - /host/path 不存在时 docker run -v /host/path:/container/path 权限问题
- sql - 使用精度计算金额
- reactjs - REDUX:尝试添加增量器和减量器,但它不起作用
- c# - C# .Net Core 3.1 SPA - 如何使中间件仅适用于单个路径