Python 试图从MySQL获取数据

Python 试图从MySQL获取数据,python,mysql,flask,fetch,connector,Python,Mysql,Flask,Fetch,Connector,main.py 当我使用cursor.execute。。在路线之外,它正在工作 错误 cursor.execute(“从电子邮件=%s的用户中选择id”(request.get_json()[“details”][“eMail”],)) 文件“C:\Users\woxro\AppData\Local\Programs\Python\Python38-32\Lib\site packages\mysql\connector\cursor.py”,执行中第1186行 charset=self.\u

main.py

当我使用cursor.execute。。在路线之外,它正在工作

错误

cursor.execute(“从电子邮件=%s的用户中选择id”(request.get_json()[“details”][“eMail”],)) 文件“C:\Users\woxro\AppData\Local\Programs\Python\Python38-32\Lib\site packages\mysql\connector\cursor.py”,执行中第1186行 charset=self.\u connection.charset
AttributeError:“非类型”对象没有属性“字符集”

问题在于您创建了连接,并在调用网桥之前将其关闭。请参阅: MySQL.close()

这就是为什么它在桥接方法之外工作

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()