本文實例講述了python中MySQLdb模塊用法。分享給大家供大家參考。具體用法分析如下:
MySQLdb其實有點像php或asp中連接數據庫的一個模式了,只是MySQLdb是針對mysql連接了接口,我們可以在python中連接MySQLdb來實現數據的各種操作。
python連接mysql的方案有oursql、PyMySQL、 myconnpy、MySQL Connector 等,不過本篇要說的確是另外一個類庫MySQLdb,MySQLdb 是用于Python鏈接Mysql數據庫的接口,它實現了 Python 數據庫 API 規范 V2.0,基于 MySQL C API 上建立的??梢詮模篽ttps://pypi.python.org/pypi/MySQL-python 進行獲取和安裝,而且很多發行版的linux源里都有該模塊,可以直接通過源安裝。
一、數據庫連接
MySQLdb提供了connect方法用來和數據庫建立連接,接收數個參數,返回連接對象:
代碼如下:conn=MySQLdb.connect(host="localhost",user="root",passwd="jb51",db="test",charset="utf8")
比較常用的參數包括:
host:數據庫主機名.默認是用本地主機
user:數據庫登陸名.默認是當前用戶
passwd:數據庫登陸的秘密.默認為空
db:要使用的數據庫名.沒有默認值
port:MySQL服務使用的TCP端口.默認是3306
charset:數據庫編碼
更多關于參數的信息可以查這里 http://mysql-python.sourceforge.net/MySQLdb.html
然后,這個連接對象也提供了對事務操作的支持,標準的方法:
commit() 提交
rollback() 回滾
看一個簡單的查詢示例如下:
代碼如下:#!/usr/bin/python
# encoding: utf-8
import MySQLdb
# 打開數據庫連接
db = MySQLdb.connect("localhost","root","361way","test" )
# 使用cursor()方法獲取操作游標
cursor = db.cursor()
# 使用execute方法執行SQL語句
cursor.execute("SELECT VERSION()")
# 使用 fetchone() 方法獲取一條數據庫。
data = cursor.fetchone()
print "Database version : %s " % data
# 關閉數據庫連接
db.close()
腳本執行結果如下:
Database version : 5.5.40
二、cursor方法執行與返回值
cursor方法提供兩類操作:1.執行命令,2.接收返回值 。
cursor用來執行命令的方法
代碼如下://用來執行存儲過程,接收的參數為存儲過程名和參數列表,返回值為受影響的行數
callproc(self, procname, args)
//執行單條sql語句,接收的參數為sql語句本身和使用的參數列表,返回值為受影響的行數
execute(self, query, args)
//執行單挑sql語句,但是重復執行參數列表里的參數,返回值為受影響的行數
executemany(self, query, args)
//移動到下一個結果集
nextset(self)
cursor用來接收返回值的方法
//接收全部的返回結果行.
fetchall(self)
//接收size條返回結果行.如果size的值大于返回的結果行的數量,則會返回cursor.arraysize條數據
新聞熱點
疑難解答