Python開發【第十九篇】:Python操做MySQL

本篇對於Python操做MySQL主要使用兩種方式:html

  • 原生模塊 pymsql
  • ORM框架 SQLAchemy

pymsql

pymsql是Python中操做MySQL的模塊,其使用方法和MySQLdb幾乎相同。mysql

下載安裝sql

1
pip3 install pymysql

使用操做數據庫

一、執行SQL編程

二、獲取新建立數據自增IDoracle

三、獲取查詢數據框架

注:在fetch數據時按照順序進行,可使用cursor.scroll(num,mode)來移動遊標位置,如:編程語言

  • cursor.scroll(1,mode='relative')  # 相對當前位置移動
  • cursor.scroll(2,mode='absolute') # 相對絕對位置移動

四、fetch數據類型fetch

  關於默認獲取的數據是元祖類型,若是想要或者字典類型的數據,即:spa

  練習題

SQLAchemy

SQLAlchemy是Python編程語言下的一款ORM框架,該框架創建在數據庫API之上,使用關係對象映射進行數據庫操做,簡言之即是:將對象轉換成SQL,而後使用數據API執行SQL並獲取執行結果。

安裝:

1
pip3 install SQLAlchemy

 

SQLAlchemy自己沒法操做數據庫,其必須以來pymsql等第三方插件,Dialect用於和數據API進行交流,根據配置文件的不一樣調用不一樣的數據庫API,從而實現對數據庫的操做,如:

1
2
3
4
5
6
7
8
9
10
11
12
13
MySQL-Python
     mysql+mysqldb://< user >:< password >@<host>[:<port>]/<dbname>
   
pymysql
     mysql+pymysql://<username>:< password >@<host>/<dbname>[?<options>]
   
MySQL-Connector
     mysql+mysqlconnector://< user >:< password >@<host>[:<port>]/<dbname>
   
cx_Oracle
     oracle+cx_oracle:// user :pass@host:port/dbname[? key =value& key =value...]
   
更多詳見:http://docs.sqlalchemy.org/en/latest/dialects/ index .html

1、內部處理

使用 Engine/ConnectionPooling/Dialect 進行數據庫操做,Engine使用ConnectionPooling鏈接數據庫,而後再經過Dialect執行SQL語句。

2、ORM功能使用

使用 ORM/Schema Type/SQL Expression Language/Engine/ConnectionPooling/Dialect 全部組件對數據進行操做。根據類建立對象,對象轉換成SQL,執行SQL。

一、建立表

注:設置外檢的另外一種方式 ForeignKeyConstraint(['other_id'], ['othertable.other_id'])

二、操做表

  表結構 + 數據庫鏈接

  •   View Code

  •   View Code

  •   View Code

  •   View Code
  • 其餘
      View Code

更多功能參見文檔,猛擊這裏下載PDF

相關文章
相關標籤/搜索