- 論壇徽章:
- 0
|
Python訪問MYSQL的使用
首先要開啟mysql。這樣才能訪問。
1,下載訪問MYSQL的python包:
http://sourceforge.net/projects/mysql-python/
2,安裝,我用的windows下直接next。
3,訪問:
a,建立一個(gè)MySQLdb的類實(shí)例。conn = MySQLdb.connect
(host="localhost",user="root",passwd="ss",db="mytable")返回連接對象。
host:Mysql主機(jī)
user:連接使用的用戶名
passwd:連接使用的用戶名密碼
db:默認(rèn)打開的數(shù)據(jù)庫
b,獲取數(shù)據(jù)庫指針(當(dāng)前指向數(shù)據(jù)庫的指針)。cursor = conn.cursor()
c,獲取數(shù)據(jù)庫信息(select是mysql的命令)。執(zhí)行cursor.execute('select * from tables')
d,獲取一row。fetchone(),類似readline(),每次返回row的tuple
e,移動指針。相當(dāng)于f.seek()。cursor.scroll(int, parm)。
int:移動的行數(shù),整數(shù);在相對模式下,正數(shù)向下移動,負(fù)值表示向上移動。
parm:移動的模式,默認(rèn)是relative,相對模式;可接受absoulte,絕對模式。
f,修改數(shù)據(jù):括號內(nèi)為mysql的命令
cursor.execute("insert into table (row1, row2) values ('111', '222')")
cursor.execute("update table set row1 = 'test' where row2 = 'row2' ")
cursor.execute("delete from table where row1 = 'row1' ")
有時(shí)候會這樣寫:
sql="insert into note (note_id,note_detail) values (%s,%s)"
param=('600000',"aaaa")
cursor.execute(sql,param)
g,修改確認(rèn):conn.commit()
h,訪問完后,關(guān)閉
cursor.close()
conn.close()
類似于f.close()
上代碼:
import MySQLdb
conn = MySQLdb.connect(host="localhost",user="root",passwd="123",db="test")
conn.select_db("test")
cursor = conn.cursor()
cursor.execute("select * from table1") # print all table1
# cursor.execute("insert into shop values(1,'a')") # insert row
# conn.commit() # commit update
sd = cursor.fetchall() # fetch the table1
print sd
cursor.close() # close
conn.close()
本文來自ChinaUnix博客,如果查看原文請點(diǎn):http://blog.chinaunix.net/u1/33851/showart_1998594.html |
|