如何解决尝试从MySQL获取数据
main.py
当我在路由之外使用cursor.execute ..时,它正在工作。
import mysql.connector
from flask import Flask,render_template,request,session,redirect,url_for,make_response
MySQL = mysql.connector.connect(
user='root',password='password',host='localhost',database='dbname',use_pure=True
)
cursor = MySQL.cursor(prepared=True)
@app.route("/bridge",methods=["POST"])
def bridge():
if request.get_json()["for"] == "signUp":
if request.get_json()["type"] == "existence":
cursor.execute("SELECT id FROM users WHERE eMail=%s",(request.get_json()["details"]["eMail"],))
print("----------------- {}".format(cursor.fetchone()))
print(request.get_json()["details"]["eMail"])
return make_response(json.dumps({"Res"}),200)
cursor.close()
MySQL.close()
错误
cursor.execute(“来自用户的SELECT ID,其中eMail =%s”,(request.get_json()[“ details”] [“ eMail”],)) 执行中的文件“ C:\ Users \ woxro \ AppData \ Local \ Programs \ Python \ Python38-32 \ Lib \ site-packages \ mysql \ connector \ cursor.py”,行1186 字符集= self._connection.charset AttributeError:“ NoneType”对象没有属性“ charset”
解决方法
问题是创建连接并在调用网桥之前将其关闭。请参阅: MySQL.close()
这就是为什么它在bridge方法之外起作用的原因
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。