1. 程式人生 > >MySql資料庫與python互動型別(十)

MySql資料庫與python互動型別(十)

與python互動簡介

  • 在熟練使用sql語句的基礎上,開始使用python語言提供的模組與mysql進行互動
  • 這是我們在工作中大事要做的事
  • 先學會sql是基礎,一定要熟練編寫sql語句

安裝引入模組

  • 安裝mysql模組
sudo apt-get install python-mysql
  • 在檔案中引入模組
import Mysqldb

Connection物件

  • 用於建立與資料庫的連線
  • 建立物件:呼叫connect()方法
conn=connect(引數列表)
  • 引數host:連線的mysql主機,如果本機是'localhost'
  • 引數port:連線的mysql主機的埠,預設是3306
  • 引數db:資料庫的名稱
  • 引數user:連線的使用者名稱
  • 引數password:連線的密碼
  • 引數charset:通訊採用的編碼方式,預設是'gb2312',要求與資料庫建立時指定的編碼一致,否則中文會亂碼

物件的方法

  • close()關閉連線
  • commit()事務,所以需要提交才會生效
  • rollback()事務,放棄之前的操作
  • cursor()返回Cursor物件,用於執行sql語句並獲得結果

Cursor物件

  • 執行sql語句
  • 建立物件:呼叫Connection物件的cursor()方法
cursor1=conn.cursor()

物件的方法

  • close()關閉
  • execute(operation [, parameters ])執行語句,返回受影響的行數
  • fetchone()執行查詢語句時,獲取查詢結果集的第一個行資料,返回一個元組
  • next()執行查詢語句時,獲取當前行的下一行
  • fetchall()執行查詢時,獲取結果集的所有行,一行構成一個元組,再將這些元組裝入一個元組返回
  • scroll(value[,mode])將行指標移動到某個位置
    • mode表示移動的方式
    • mode的預設值為relative,表示基於當前行移動到value,value為正則向下移動,value為負則向上移動
    • mode的值為absolute,表示基於第一條資料的位置,第一條資料的位置為0

物件的屬性

  • rowcount只讀屬性,表示最近一次execute()執行後受影響的行數
  • connection獲得當前連線物件