国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

flask筆記:flask與數據庫的交互

elliott_hu / 620人閱讀

摘要:下面的兩種方式不僅限于,其實就是對數據庫操作的具體實現。第一種方式針對查詢定義數據庫屬性創建數據庫連接對象第二種方式針對增刪改,有事務定義數據庫屬性創建數據庫連接對象

官方推薦使用flask-sqlalchemy,但是這里我個人并不推薦。因為一般后臺程序員其實更喜歡使用原生sql語言處理數據庫的問題,更重要的一個原因是在項目上線后,處理一些運維問題時,如果可以查看sql語句可以更快找到問題。其次flask-sqlalchemy是在sqlalchemy基礎上封裝了一層,從編譯的角度看效率上肯定會低一些(效率的影響也許微乎其微)。

基于以上原因,我推薦使用sqlalchemy進行開發。

下面的兩種方式不僅限于flask,其實就是python對數據庫操作的具體實現。

第一種方式(針對查詢):

from sqlalchemy import create_engine,text
#定義數據庫屬性
hostname = "127.0.0.1"
port = "3306"
database = "dbname"
username = "root"
pwd = "pwd"
dburl = "mysql+mysqldb://{}:{}@{}:{}/{}".format(username,pwd,hostname,port,database)
#創建數據庫連接對象
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

第二種方式(針對增刪改,有事務):

from sqlalchemy import create_engine,text
from sqlalchemy.orm import sessionmaker
#定義數據庫屬性
hostname = "127.0.0.1"
port = "3306"
database = "dbname"
username = "root"
pwd = "pwd"
dburl = "mysql+mysqldb://{}:{}@{}:{}/{}".format(username,pwd,hostname,port,database)
#創建數據庫連接對象
engine = create_engine(dburl,echo=True)
Session = sessionmaker(bind=engine)
session = Session()
session.execute("insert test values ("abc","123")")
session.commit()
session.close()

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/44572.html

相關文章

  • flask筆記:是flask.ext.sqlalchemy還是flask_sqlalchemy

    摘要:首先出結論,和是一個意思,區別是寫法不同,兼容性不同。是特有的拓展功能,目前,擴展必須支持以及原因擴展導入轉換我們推薦使用擴展的命名空間包。相反,我們現在推薦命名軟件包,而不是現在已棄用的。 最近入門python的flask框架,官方推薦用sqlalchemy庫作為與數據庫交互的工具。這時我在看網絡上一些文章資料時發現一個問題。 這里插個題外話,sqlalchemy和flask_sql...

    DandJ 評論0 收藏0
  • flask文檔學習筆記1-快速入門

    摘要:示例如下靜態路由使用動態變量的路由未指定變量類型使用動態變量的路由指定變量類型指定的路由變量,可以作為被裝飾的函數參數傳入進來。 開始決定認真的在網上寫一些東西,主要原因還是在于希望能提升學習效果。雖說python寫了有幾年,但是web后端框架的確沒怎么接觸過,買了本狗書寥寥草草的過了一遍,發現很多東西還是理解不深,真的是好記性不如爛筆頭,知識也要從基礎開始,退回來好好看看官方文檔,再...

    lingdududu 評論0 收藏0
  • Python學習筆記:Web后端開發一覽

    摘要:試想,在多線程服務器中,多個線程同時處理不同客戶端發送的不同請求時,每個線程看到的對象必然不同。多線程服務器會創建一個線程池,再從線程池中選擇一個線程用于處理接收到的請求。 框架 Django flask flask是一個輕量的web開發應用示例開發一個小應用 from flask import Flask app = Flask(__name__) @app.route(/) d...

    DrizzleX 評論0 收藏0
  • [譯]如何使用Flask開發一個增刪改查應用

    摘要:教程譯文首發自我的博客我們將創建一個簡單的數據庫驅動的筆記本應用。本教程面向想學習如何使用開發網站或者應用的初學者。在剛創建的文件中,創建一個名為的文件?,F在,我們將創建一個函數,并且使用裝飾器將它綁定到一個上。 showImg(https://segmentfault.com/img/remote/1460000006765797); 教程譯文首發自我的博客:Defshines Bl...

    tianlai 評論0 收藏0
  • Flask 源碼閱讀筆記 開篇

    摘要:官方示例第一行類對象,這個無需解釋。請求對象的端點請求視圖函數的參數通過源碼的注釋我們可以知道,都只是對庫的進行了一層包裝并加入一些屬性。接下來會有更多關于和相關文章放出來,敬請期待參考文檔項目源碼版本注釋版 Flask 是一個 Python 實現的 Web 開發微框架, 有豐富的生態資源。本文從一段官方的示例代碼通過一步步打斷點方式解釋 Flask 內部的運行機制,在一些關鍵概念會...

    mikyou 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<