‘壹’ 在python3下怎样用flask-sqlalchemy对mysql数据库操作
在Python3中,使用Flask-SQLAlchemy操作MySQL数据库时,开发者经常面临挑战。许多教程专注于SQLite,而实际应用中通常使用MySQL或其他数据库,这导致新手难以直接将教程内容应用到实际项目中。
问题在于Python和MySQL之间缺乏直接交互,因此需要一种翻译工具,即中间代理,让它们能够互相理解。常见的选择是flask-mysqldb,它实际上依赖于MySQL-python作为其核心功能。
然而,另一种选择是PyMySQL,它可以提供异步操作,这对于高访问量的网站尤为重要。安装PyMySQL的方式为:pip install PyMySQL
之后,数据库连接代码可以更改为:
这样,开发者就能够利用PyMySQL与MySQL数据库进行有效交互,实现流畅的数据库操作。
为了更深入地理解数据库操作与Flask-SQLAlchemy集成,请参考SQLAlchemy 1.0的MySQL文档:MySQL — SQLAlchemy 1.0 Documentation。
‘贰’ python如何使用pymysql连接数据库封装类
1、python安装目录设定为d:/python34
2、pymysql安装方法为:解压下载的文件,在cmd中运行: python setup.py install。
检验安装安装是否成功的方法:import pymysql 。 如果不报错 说明安装成功。
3、mysql安装目录为D:/phpStudy/MySQL。为避免更多配置问题,可在启动phpstudy后,将其设为系统服务
4、基本操作:
(1)导入pymysql: import pymysql
(2)连接数据库:
conn=pymysql.connect(host='localhost',user='root',passwd='root',db='ere',charset='utf8')
务必注意各等号前面的内容!charset参数可避免中文乱码
(3)获取操作游标:cur=conn.cursor()
(4)执行sql语句,插入记录:sta=cur.execute("insert 语句") 执行成功后sta值为1。更新、删除语句与此类似。
(5)执行sql语句,查询记录:cur.execute("select语句") 执行成功后cur变量中保存了查询结果记录集,然后再用循环打印结果:
for each in cur:
print(each[1].decode('utf-8')) # each[1] 表示当前游标所在行的的第2列值,如果是中文则需要处理编码