cursor 資料庫連線操作 python

2022-07-29 00:27:14 字數 2272 閱讀 7531

python 運算元據庫,要安裝乙個python和資料庫互動的包mysql-python-1.2.2.win32-py2.5.exe,然後我們就可以使用mysqldb這個包進行資料庫操作了。

操作步驟如下:

1、建立資料庫連線

import mysqldb

conn=mysqldb.connect(host="localhost",user="root",passwd="sa",db="mytable")

cursor=conn.cursor()

2、執行資料庫操作

n=cursor.execute(sql,param)

我們要使用連線物件獲得乙個cursor物件,接下來,我們會使用cursor提供的方法來進行工作.

這些方法包括兩大類:1.執行命令,2.接收返回值

3、cursor用來執行命令的方法:

callproc(self, procname, args):用來執行儲存過程,接收的引數為儲存過程名和引數列表,返回值為受影響的行數

execute(self, query, args):執行單條sql語句,接收的引數為sql語句本身和使用的引數列表,返回值為受影響的行數

executemany(self, query, args):執行單挑sql語句,但是重複執行引數列表裡的引數,返回值為受影響的行數

nextset(self):移動到下乙個結果集

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

fetchall(self):接收全部的返回結果行.

fetchmany(self, size=none):接收size條返回結果行.如果size的值大於返回的結果行的數量,則會返回cursor.arraysize條資料.

fetchone(self):返回一條結果行.

scroll(self, value, mode='relative'):移動指標到某一行.如果mode='relative',則表示從當前所在行移動value條,如果mode='absolute',則表示從結果集的第一 行移動value條.

5、下面的**是乙個完整的例子.

#使用sql語句,這裡要接收的引數都用%s佔位符.要注意的是,無論你要插入的資料是什麼型別,佔位符永遠都要用%s

sql="insert into cdinfo values(%s,%s,%s,%s,%s)"

#param應該為tuple或者list

param=(title,singer,imgurl,url,alpha)

#執行,如果成功,n的值為1

n=cursor.execute(sql,param)

#再來執行乙個查詢的操作

cursor.execute("select * from cdinfo")

#我們使用了fetchall這個方法.這樣,cds裡儲存的將會是查詢返回的全部結果.每條結果都是乙個tuple型別的資料,這些tuple組成了乙個tuple

cds=cursor.fetchall()

#因為是tuple,所以可以這樣使用結果集

print cds[0][3]

#或者直接顯示出來,看看結果集的真實樣子

print cds

#如果需要批量的插入資料,就這樣做

sql="insert into cdinfo values(0,%s,%s,%s,%s,%s)"

#每個值的集合為乙個tuple,整個引數集組成乙個tuple,或者list

param=((title,singer,imgurl,url,alpha),(title2,singer2,imgurl2,url2,alpha2))

#使用executemany方法來批量的插入資料.這真是乙個很酷的方法!

n=cursor.executemany(sql,param)

需要注意的是(或者說是我感到奇怪的是),在執行完插入或刪除或修改操作後,需要呼叫一下conn.commit()方法進行提交.這樣,資料才會真正保 存在資料庫中.我不清楚是否是我的mysql設定問題,總之,今天我在一開始使用的時候,如果不用commit,那資料就不會保留在資料庫中,但是,資料 確實在資料庫呆過.因為自動編號進行了累積,而且返回的受影響的行數並不為0.

6、關閉資料庫連線

需要分別的關閉指標物件和連線物件.他們有名字相同的方法

cursor.close()

conn.close() 

django運算元據庫

django是乙個出色的用於python的web框架。django連線有運算元據庫的api,使用起來十分簡潔。我們在settings.py中配置好所要連線的資料庫,然後在modules、view、urls中分別寫好業務邏輯

python之cursor 資料庫連線操作

python 運算元據庫,要安裝乙個python和資料庫互動的包mysql python 1.2.2.win32 py2.5.exe,然後我們就可以使用mysqldb這個包進行資料庫操作了。操作步驟如下 1 建立資料庫連線 import mysqldb conn mysqldb.connect ho...

py連線資料庫

py連線資料庫 18,py 連線 mysql pip install pymysql 乙太網 自動獲取ip pymysql 連線 mysql pymysql 操作 mysql增刪改查 防止sql注入 pymysql python 操作mysql 模組 pip install mysql connec...

py之資料庫操作

import pymysql1.連線資料庫 host user passwd charset conn pymysql.connect host localhost user root password redhat db westos charset utf8 2.建立游標物件 cur conn....