Python學習筆記八:ORM架構SQLAlchemy

來源:互聯網
上載者:User

標籤:查詢   實體類   orm架構   ima   排序   博文   物件導向   映射   子類   

一:SQLAlchemy使用

1:實體類的建立

ORM中的實體類與一般的Python類不同,在其中,使用 __tablename__=""指明該類與資料庫中某個表相對應,然後定義一系列成員屬性,屬性值使用 Column(資料類型) 來映射到表中具體哪一列。

首先,建立資料庫引擎,並由靜態方法擷取一個基類:declarative_base() 建立了一個 BaseModel 類,這個類的子類可以自動與一個表關聯。

然後,繼承base類,定義實體類:

帶外鍵的實體類建立:

 

最後,運行基類中內建的方法,把資料庫引擎傳進去,建立出資料庫表:BaseModel.metadata.create_all(engine) 會找到 BaseModel 的所有子類,並在資料庫中建立這些表

 

2:建立記錄

建立一個類執行個體,就對應了一條資料庫記錄。

 

3:建立資料庫會話

 

4:使用物件導向的方式操作資料庫

增:

增加一條記錄:

增加多條記錄:

 

查:

條件查詢:

全表查詢:

排序查詢:

過濾查詢(in/not in):

統計查詢記錄數:

邏輯查詢:and/or後面跟左右運算元。

join查詢:

其他更多操作:參考這篇博文:

http://blog.csdn.net/fengzhongzhishenfu/article/details/38978863

 

5:提交事務,使持久化操作生效

Python學習筆記八:ORM架構SQLAlchemy

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.