flask 调用mysql_Flask中使用mysql

本文介绍如何使用Python的Flask框架结合MySQL进行简单应用开发,包括数据库连接配置、用户认证等核心步骤,并提醒开发者注意SQL注入风险。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Flask中使用mysql

先安装相关模块:

pip  install  Flask-MySQL

先准备一下数据库

登录:

mysql  -u  root  -p

创建Database和创建Table

mysql> CREATE DATABASE EmpData;

mysql> use EmpData;

mysql> CREATE TABLE User(

userId INT NOT NULL AUTO_INCREMENT,

userName VARCHAR(100) NOT NULL,

password VARCHAR(40) NOT NULL,

PRIMARY KEY(userId)

);

插入数据:

mysql> insert into User values('','Admin','admin');

现在,让我们回到hello.py并尝试使用flask-mysql连接MySQL。 首先,通过在hello.py中导入它来初始化扩展,如下所示:

from flask import Flask

from flaskext.mysql import MySQL

mysql = MySQL()

app = Flask(__name__)

app.config['MYSQL_DATABASE_USER'] = 'root'

app.config['MYSQL_DATABASE_PASSWORD'] = 'root'

app.config['MYSQL_DATABASE_DB'] = 'EmpData'

app.config['MYSQL_DATABASE_HOST'] = 'localhost'

mysql.init_app(app)

@app.route("/")

def hello():

return "Welcome to Python Flask App!"

if __name__ == "__main__":

app.run()

我们将使用cuesor从数据库访问数据,可以使用mysql对象创建一个。我们还可以添加一个叫Authenticate的方法,来验证登录过程,所以添加下面代码:

@app.route("/Authenticate")

def Authenticate():

username = request.args.get('UserName')

password = request.args.get('Password')

cursor = mysql.connect().cursor()

cursor.execute("SELECT * from User where Username='" + username + "' and Password='" + password + "'")

data = cursor.fetchone()

if data is None:

return "Username or Password is wrong"

else:

return "Logged in successfully"

测试

python hello.py

假如我们在浏览器输入了错误的数据库数据(UserName和Password),比如:

浏览器会提示错误:

Username or Password is wrong

输入数据库内的数据:

显示:

Logged in successfully.

不过前面都只是简单的操作数据库,如果没有配合参数过滤,容易遇到sql注入的危险,应该注意

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值