flask與數(shù)據(jù)庫(kù)的交互操作示例
官方推薦
官方推薦使用flask-sqlalchemy,但是這里我個(gè)人并不推薦。因?yàn)橐话愫笈_(tái)程序員其實(shí)更喜歡使用原生sql語(yǔ)言處理數(shù)據(jù)庫(kù)的問(wèn)題,更重要的一個(gè)原因是在項(xiàng)目上線后,處理一些運(yùn)維問(wèn)題時(shí),如果可以查看sql語(yǔ)句可以更快找到問(wèn)題。
其次flask-sqlalchemy是在sqlalchemy基礎(chǔ)上封裝了一層,從編譯的角度看效率上肯定會(huì)低一些(效率的影響也許微乎其微)。
基于以上原因,我推薦使用sqlalchemy進(jìn)行開(kāi)發(fā)。
下面的兩種方式不僅限于flask,其實(shí)就是python對(duì)數(shù)據(jù)庫(kù)操作的具體實(shí)現(xiàn)。
第一種方式(針對(duì)查詢)
from sqlalchemy import create_engine,text #定義數(shù)據(jù)庫(kù)屬性 hostname = '127.0.0.1' port = '3306' database = 'dbname' username = 'root' pwd = 'pwd' dburl = 'mysql+mysqldb://{}:{}@{}:{}/{}'.format(username,pwd,hostname,port,database) #創(chuàng)建數(shù)據(jù)庫(kù)連接對(duì)象 engine = create_engine(dburl,echo=True) with engine.connect() as con: rs = con.execute('SELECT 1') # con.execute(text("select 1 ")) for row in rs: print row
第二種方式(針對(duì)增刪改,有事務(wù))
from sqlalchemy import create_engine,text from sqlalchemy.orm import sessionmaker #定義數(shù)據(jù)庫(kù)屬性 hostname = '127.0.0.1' port = '3306' database = 'dbname' username = 'root' pwd = 'pwd' dburl = 'mysql+mysqldb://{}:{}@{}:{}/{}'.format(username,pwd,hostname,port,database) #創(chuàng)建數(shù)據(jù)庫(kù)連接對(duì)象 engine = create_engine(dburl,echo=True) Session = sessionmaker(bind=engine) session = Session() session.execute("insert test values ('abc','123')") session.commit() session.close()
以上就是flask與數(shù)據(jù)庫(kù)的交互示例的詳細(xì)內(nèi)容,更多關(guān)于flask數(shù)據(jù)庫(kù)交互的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
python操作excel之openpyxl模塊讀寫xlsx格式使用方法詳解
這篇文章主要介紹了python操作excel之openpyxl模塊讀寫xlsx格式使用方法詳解,需要的朋友可以參考下2022-12-12Python單元測(cè)試框架unittest簡(jiǎn)明使用實(shí)例
這篇文章主要介紹了Python單元測(cè)試框架unittest簡(jiǎn)明使用實(shí)例,本文講解了基本測(cè)試步驟、和測(cè)試實(shí)例,需要的朋友可以參考下2015-04-04在PyCharm環(huán)境中使用Jupyter Notebook的兩種方法總結(jié)
今天小編就為大家分享一篇在PyCharm環(huán)境中使用Jupyter Notebook的兩種方法總結(jié),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-05-05解決Django no such table: django_session的問(wèn)題
這篇文章主要介紹了解決Django no such table: django_session的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-04-04使用Python一鍵提取PDF中的表格到Excel的方法詳解
從PDF文件獲取表格中的數(shù)據(jù),也是日常辦公容易涉及到的一項(xiàng)工作,一個(gè)一個(gè)復(fù)制吧,效率確實(shí)太低了,用Python從PDF文檔中提取表格數(shù)據(jù),并寫入Excel文件,灰?;页8咝?本文就給大家介紹一下如何使用Python一鍵提取PDF中的表格到Excel,需要的朋友可以參考下2023-08-08python高手之路python處理excel文件(方法匯總)
用python來(lái)自動(dòng)生成excel數(shù)據(jù)文件。python處理excel文件主要是第三方模塊庫(kù)xlrd、xlwt、xluntils和pyExcelerator,除此之外,python處理excel還可以用win32com和openpyxl模塊2016-01-01