Python使用Flask-SQLAlchemy连接数据库操作示例
本文实例讲述了Python使用Flask-SQLAlchemy连接数据库操作。分享给大家供大家参考,具体如下:
需要安装flask
pipinstallflask
安装Mysql-Python(这个是py的mysql驱动,这个在官方没有win的支持,只有第三方才有py2.7的whl)
pipinstallMySQL_python-1.2.5-cp27-none-win_amd64.whl
注:上述whl文件也可点击此处链接下载到本地安装:https://www.lfd.uci.edu/~gohlke/pythonlibs/
安装Flask-SQLAlchemy
pipiinstallFlask-SQLAlchemy
注意,如果出现了编码问题,安装的时候,有可能是终端的编码有问题,我换成了gitbashshell就没问题了。
myflask.py
#coding:utf-8 fromflaskimportFlask #安装python-mysql因为没有官方支持win版本,只有网上有whl下载 #pipinstallflask_sqlalchemy fromflask_sqlalchemyimportSQLAlchemy importconfig#config.py导入 app=Flask(__name__) app.config.from_object(config)#SQLALchemy会自动从配置文件读取那个固定的URI字符串 db=SQLAlchemy(app) db.create_all() @app.route('/') defhello_world(): return'你好世界' if(__name__=='__main__'): app.run(debug=True)#开启debug模式,这里如果出错会直接有提示
config.py
#coding:utf-8 #dialect+driver://username:password@host:port/database DIALECT='mysql' DRIVER='mysqldb' USERNAME='root' PASSWORD='root' HOST='127.0.0.1' PORT='3306' DATABASE='flask0' #这个连接字符串变量名是固定的具体参考flask_sqlalchemy文档sqlalchemy会自动找到flask配置中的这个变量 SQLALCHEMY_DATABASE_URI='{}+{}://{}:{}@{}:{}/{}?charset=utf8'.format(DIALECT,DRIVER,USERNAME,PASSWORD,HOST,PORT,DATABASE)
运行看控制台:(有一些无关紧要的警告,可以不管)
D:\Python27\python.exeD:/PythonProjects/learn0/myflask.py
D:\Python27\lib\site-packages\flask_sqlalchemy\__init__.py:794:FSADeprecationWarning:SQLALCHEMY_TRACK_MODIFICATIONSaddssignificantoverheadandwillbedisabledbydefaultinthefuture. SetittoTrueorFalsetosuppressthiswarning.
'SQLALCHEMY_TRACK_MODIFICATIONSaddssignificantoverheadand'
D:\Python27\lib\site-packages\sqlalchemy\engine\default.py:470:Warning:Incorrectstringvalue:'\xD6\xD0\xB9\xFA\xB1\xEA...'forcolumn'VARIABLE_VALUE'atrow478
cursor.execute(statement,parameters)
*Restartingwithstat
D:\Python27\lib\site-packages\flask_sqlalchemy\__init__.py:794:FSADeprecationWarning:SQLALCHEMY_TRACK_MODIFICATIONSaddssignificantoverheadandwillbedisabledbydefaultinthefuture. SetittoTrueorFalsetosuppressthiswarning.
'SQLALCHEMY_TRACK_MODIFICATIONSaddssignificantoverheadand'
D:\Python27\lib\site-packages\sqlalchemy\engine\default.py:470:Warning:Incorrectstringvalue:'\xD6\xD0\xB9\xFA\xB1\xEA...'forcolumn'VARIABLE_VALUE'atrow478
cursor.execute(statement,parameters)
*Debuggerisactive!
*DebuggerPIN:164-312-281
*Runningonhttp://127.0.0.1:5000/(PressCTRL+Ctoquit)
127.0.0.1--[18/Oct/201716:01:03]"GET/HTTP/1.1"200-
127.0.0.1--[18/Oct/201716:01:04]"GET/HTTP/1.1"200-
127.0.0.1--[18/Oct/201716:01:06]"GET/HTTP/1.1"200-
希望本文所述对大家基于flask框架的Python程序设计有所帮助。