1. 程式人生 > >python連線MySQL資料庫問題

python連線MySQL資料庫問題

Python 資料庫圖解流程

 

 

Connection、Cursor比喻

 

 

Connection()的引數列表

host,連線的資料庫伺服器主機名,預設為本地主機(localhost)。
user,連線資料庫的使用者名稱,預設為當前使用者。
passwd,連線密碼,沒有預設值。
db,連線的資料庫名,沒有預設值。
conv,將文字對映到Python型別的字典。
MySQLdb.converters.conversions
cursorclass,cursor()使用的種類,預設值為MySQLdb.cursors.Cursor。
compress,啟用協議壓縮功能。
named_pipe,在windows中,與一個命名管道相連線。
init_command,一旦連線建立,就為資料庫伺服器指定一條語句來執行。
read_default_file,使用指定的MySQL配置檔案。
read_default_group,讀取的預設組。
unix_socket,在unix中,連線使用的套接字,預設使用TCP。
port,指定資料庫伺服器的連線埠,預設是3306。

 

 

連線物件的db.close()方法可關閉資料庫連線,並釋放相關資源。

連線物件的db.cursor([cursorClass])方法返回一個指標物件,用於訪問和操作資料庫中的資料。
連線物件的db.begin()方法用於開始一個事務,如果資料庫的AUTOCOMMIT已經開啟就關閉它,直到事務呼叫commit()和rollback()結束。
連線物件的db.commit()和db.rollback()方法分別表示事務提交和回退。
指標物件的cursor.close()方法關閉指標並釋放相關資源。
指標物件的cursor.execute(query[,parameters])方法執行資料庫查詢。
指標物件的cursor.fetchall()可取出指標結果集中的所有行,返回的結果集一個元組(tuples)。
指標物件的cursor.fetchmany([size=cursor.arraysize])從查詢結果集中取出多行,我們可利用可選的引數指定取出的行數。
指標物件的cursor.fetchone()從查詢結果集中返回下一行。
指標物件的cursor.arraysize屬性指定由cursor.fetchmany()方法返回行的數目,影響fetchall()的效能,預設值為1。
指標物件的cursor.rowcount屬性指出上次查詢或更新所發生行數。-1表示還沒開始查詢或沒有查詢到資料。

 

 

Cursor

常用方法:

close():關閉此遊標物件
fetchone():得到結果集的下一行
fetchmany([size = cursor.arraysize]):得到結果集的下幾行
fetchall():得到結果集中剩下的所有行
excute(sql[, args]):執行一個數據庫查詢或命令
excutemany(sql, args):執行多個數據庫查詢或命令

 

 

 

 

 

 

 

 

常用屬性:

connection:建立此遊標物件的資料庫連線
arraysize:使用fetchmany()方法一次取出多少條記錄,預設為1