mysql
注意下面的操作都要现在任务管理器-服务中打开MySQL80
我们可以像下面这样查看数据库存储的位置


文档中说的“MySQL客户端”指的是


用户写root,密码写自己安装MySQL的代码,数据库写之前用命令create database dname创建的数据库的名字(即dname)。上面的操作其实就是建立一个从IDE到本地仓库的连接。
然后就可以在框里面写命令了,如下

在IDE里面写命令就等价于在命令行中写命令,只不过IDE里面有更多功能
在.py文件中可以写Python 操作数据库的代码。以语雀文档中的代码为例。语雀文档当中的代码有些错误,正确的见下
from flask import Flask, Response
from flask import request
import mysql.connector
from flask import jsonify
import mysql.connector
# Create a Flask application instance
app = Flask(__name__)
#################################################################
# Python操作数据库(使用原生SQL)
# 查询
@app.get('/database/raw')
def database_raw_query():
# 创建数据库连接
conn = mysql.connector.connect(user='root', password='...', host='127.0.0.1', database='jrrg')
# password换成安装MySQL的密码,database换成数据库的名称就好了
# 创建游标
cursor = conn.cursor()
# 执行SQL查询
sql_str = 'SELECT username, password, nickname, phone FROM user;'
cursor.execute(sql_str)
# 获取查询结果
raws = cursor.fetchall()
# 遍历查询结果并处理
l = []
for username, password, nickname, phone in raws:
l.append({'username': username, 'nickname': nickname, 'phone': phone})
# 关闭游标和连接
print(l)
cursor.close()
conn.close()
return jsonify(l)
# 新增
@app.post('/database/raw')
def database_raw_insert():
# 创建数据库连接
conn = mysql.connector.connect(user='root', password='...', host='127.0.0.1', database='jrrg')
# 创建游标
cursor = conn.cursor()
# 执行SQL查询
cursor.execute('INSERT INTO user(username, password, nickname, phone) VALUES(%s,%s,%s,%s)', ('root', '123456', 'jerry', '16666666666'))
conn.commit() # 对于INSERT、UPDATE、DELETE都需要通过commit来提交,否则修改不成功
cursor.close()
conn.close()
return '<h1>Database inserted!</h1>'
@app.put('/database/raw')
def database_raw_update():
# 创建数据库连接
conn = mysql.connector.connect(user='root', password='...', host='127.0.0.1', database='jrrg')
# 创建游标
cursor = conn.cursor()
# 执行SQL查询
cursor.execute('UPDATE user set password=%s where username=%s', ('root', 'root'))
conn.commit() # 对于INSERT、UPDATE、DELETE都需要通过commit来提交,否则修改不成功
cursor.close()
conn.close()
return '<h1>Database updated!</h1>'
@app.delete('/database/raw')
def database_raw_delete():
# 创建数据库连接
conn = mysql.connector.connect(user='root', password='...', host='127.0.0.1', database='jrrg')
# 创建游标
cursor = conn.cursor()
# 执行SQL查询
cursor.execute('DELETE FROM user where username=%s', ('root',))
conn.commit() # 对于INSERT、UPDATE、DELETE都需要通过commit来提交,否则修改不成功
cursor.close()
conn.close()
return '<h1>Database deleted!</h1>'
把上面的代码放到VScode里面,打开终端进行运行即可。
注意在运行上面的代码之前,我们必须要先创建数据库jrrg和表user,如下

运行之后我们打开APIfox进行之前flask的操作即可。这就会对我们选择的数据库进行操作(显然就是本地的数据库,也会被修改的)
Q&A
- 在VScode的终端中直接输入
flask run为什么报错?
flask run默认运行的文件是app.py,现在我们的文件名不是这个,要使用下面的命令:flask --app Python编写数据库指令.py run - 为什么使用了
flask --app Python编写数据库指令.py run报错没有模块mysql?
我们的模块mysql安装到环境jrrg中,但是有可能我们VScode或者终端中使用的Python解释器不是jrrg,这个时候就要切换。
VScode的解释器见下
![image]()
终端的解释器见下![image]()
切换终端的解释器使用命令conda activate jrrg即可



浙公网安备 33010602011771号