note 1:python操作數(shù)據(jù)庫(kù),分別是數(shù)據(jù)庫(kù)連接對(duì)象,游標(biāo)。打開(kāi)數(shù)據(jù)庫(kù)時(shí)返回conn對(duì)象,是數(shù)據(jù)庫(kù)連接對(duì)象connect,conn=sqlite3.connect(host,user,passwd,db)
host:連接數(shù)據(jù)庫(kù)的服務(wù)器主機(jī)名,默認(rèn)localhost。user:連接數(shù)據(jù)庫(kù)用戶名,默認(rèn)當(dāng)前用戶。db:連接的數(shù)據(jù)庫(kù)名。conn對(duì)象有commit()方法,表示事務(wù)提交。rollback()事務(wù)回滾。close()關(guān)閉數(shù)據(jù)庫(kù)連接。
note 2:游標(biāo)cursor是數(shù)據(jù)庫(kù)管理系統(tǒng)為用戶開(kāi)設(shè)的一個(gè)數(shù)據(jù)緩沖區(qū),存放sql語(yǔ)句的執(zhí)行結(jié)果,每個(gè)游標(biāo)區(qū)都有一個(gè)名字,用戶可以用sql語(yǔ)句逐一從游標(biāo)中獲取記錄,進(jìn)行操作處理。
note 3:定義游標(biāo)cu=conn.cursor()。游標(biāo)對(duì)象有如下操作,excute()執(zhí)行sql語(yǔ)句。excutemany執(zhí)行多條sql語(yǔ)句.fetchone()從結(jié)果中取出一條記錄,并將游標(biāo)指向下一條記錄。fetchmany()從結(jié)果中取出多條記錄。fetchall()從結(jié)果中取出所有記錄。scroll()游標(biāo)滾動(dòng)。close()關(guān)閉游標(biāo)。
note 4:操作數(shù)據(jù)庫(kù)過(guò)程:1.用db.connect創(chuàng)建數(shù)據(jù)庫(kù)連接,返回連接對(duì)象conn。
2.用conn.cursor創(chuàng)建游標(biāo)對(duì)象cu。通過(guò)cu.excute查詢數(shù)據(jù)庫(kù),用cu。fetchall等方法返回查詢結(jié)果。用conn.commit修改數(shù)據(jù)庫(kù)。關(guān)閉cu,conn。
note 5:操作mysql數(shù)據(jù)庫(kù)需要使用mysqldb接口,從sourceforge.net/projects/mysql-python/下載與Python版本對(duì)應(yīng)的mysql-Python-py2.7文件。