Python連線MySQL資料庫

2021-09-07 17:33:42 字數 1962 閱讀 5966

python標準資料庫介面為python db-api, python db-api為開發人員提供了資料庫應用 程式設計介面。

python 資料庫介面支援非常多的資料庫,你可以選擇適合你專案的資料庫:

你可以訪問python資料庫介面及api檢視詳細的支援資料庫列表。

db-api是乙個規範。它定義了一系列必須的物件和資料庫訪問方式, 以便為各種各樣的底層資料庫系統和多種多樣的資料庫介面程式提供一致的訪問介面。

python的db-api,為大多數的資料庫實現了介面,使用它連線各資料庫後,就可以用相同 的方式操作各資料庫。

python db-api使用流程:

引入api模組。

獲取與資料庫的連線。

執行sql語句和儲存過程。

關閉資料庫連線。

mysqldb是用於python鏈結mysql資料庫的介面,它實現了python 資料庫api規範v2.0,基於mysql c api上建立的。

直接使用pip進行安裝,在此之前需要安裝一些系統依賴包。

安裝完依賴,直接使用pip安裝,mysqldb模組的名字在pip上叫mysql-python。

pip install mysql-python

python db api 2.0 對事務提供了兩個方法:

cursor用來執行命令的方法:

cursor用來接收返回值的方法:

#!/usr/bin/env python

# -*- coding: utf-8 -*-

mysqldb預設查詢結果都是返回tuple,通過使用不同的游標可以改變輸出格式,這裡傳遞乙個cursors.dictcursor引數。

import mysqldb.cursors

conn = mysqldb.connect(host='localhost', user='root', passwd='root', db='test', cursorclass=mysqldb.cursors.dictcursor) cursor = conn.cursor() cursor.execute('select * from user') r = cursor.fetchall() print r # 當使用位置引數或字典管理引數時,必須匯入mysqldb.cursors模組 # 也可以用下面的寫法 import mysqldb as mdb conn = mdb.connect('localhost', 'root', 'root', 'test') cursor = conn.cursor(cursorclass=mdb.cursors.dictcursor) cursor.execute('select * from user') r = cursor.fetchall() print r

普通的操作無論是fetchall()還是fetchone()都是先將資料載入到本地再進行計算,大量的資料會導致記憶體資源消耗光。解決辦法是使用sscurosr游標來處理。

然而,在python3下,mysqldb模組不再提供支援,此時可以使用另乙個模組pymysql,它支援python2和python3。

pymysql是乙個純python寫的mysql客戶端,它的目標是替代mysqldb,可以在cpython、pypy、ironpython和jython環境下執行。pymysql在mit許可下發布。

pymysql的效能和mysqldb幾乎相當,如果對效能要求

不是特別的強,使用pymysql將更加方便。

pymysql的使用方法和mysqldb幾乎一樣。

pip install pymysql

#!/usr/bin/env python

# -*- coding: utf-8 -*-

import pymysql

config =

參考:

python連線MySQL資料庫

模組功能 connect 方法 connect 方法用於連線 資料庫,返回乙個資料庫連線物件。如果要連線乙個位於host.remote.com伺服器上名為fourm的mysql資料庫,連線串可以這樣寫 db mysqldb.connect host remote.com user user pass...

python連線mysql資料庫

看自己的機器有沒有python root localhost zn python v 會進入python pythontest。py檔案內容 usr bin python imoprt mysql module import mysqldb connect to the database db my...

python連線mysql資料庫

1 python3.5 連線mysql資料庫需要安裝pymysql外掛程式 參考教程 import pymysql conn pymysql.connect host localhost port 3306,user root passwd rusky db mysql charset utf8 c...