您好,登錄后才能下訂單哦!
小編給大家分享一下MySQL數(shù)據(jù)庫(kù)的操作案例,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!
一、鏈接數(shù)據(jù)庫(kù)
conn = pymysql.connect(host='127.0.0.1', port=3306, user='school_spt', passwd='123456', db='school_info') #返回個(gè)鏈接對(duì)象
二、創(chuàng)建游標(biāo)
cursor = conn.cursor()
三、sql拼接命令
1.字符串拼接(不推薦使用該方式,容易被sql注入)
user='root' pwd='123456' sql='select * from userinfo where password=%s and username=%s'%(pwd,user)
2.pymysql命令自帶拼接
executsql命令, args) #args可以是列表,元組或者字典 列表: user='root' pwd='123456' sql='select * from userinfo where password=%s and username=%s' cursor.execute(sql,[pwd,user]) 元組 user='root' pwd='123456' sql='select * from userinfo where password=%s and username=%s' cursor.execute(sql,(pwd,user)) 字典 sql='select * from userinfo where password=%(password)s and username=%(username)s' cursor.execute(sql,({'password':pwd,'username':user}))
四、查
sql='select * from userinfo' res=cursor.execute(sql) #返回受影響的行數(shù) #獲取返回的數(shù)據(jù) cursor.fetchone() #獲取返回的第一行內(nèi)容 cursor.fetchmany(n) #獲取返回的前n行內(nèi)容 cursor.fetchall() #獲取返回的全部?jī)?nèi)容 #返回的數(shù)據(jù)默認(rèn)是元組形式,如果要以字典形式顯示 cursor = conn.cursor(cursor=pymysql.cursors.DictCursor)
五、改(改,刪,增)
1.增
sql=‘insert into userinfo(username,password) values(%s,%s)’ cursor.execute(sql,('root','123')); #單條插入 也可以使用批量插入數(shù)據(jù) cursor.executemany(sql,[('root','123'),('root1','1234'),('root2','123')]);
2.改,刪沒(méi)有批量執(zhí)行命令,批量一般都使用單條執(zhí)行
3.增,刪,改操作后,都需要使用 conn.commit()來(lái)確認(rèn)提交數(shù)據(jù)
六、execute會(huì)返回受影響的行數(shù)。一般不適用
七、scroll 在fetch數(shù)據(jù)時(shí)按照順序進(jìn)行(類似生成器),可以使用cursor.scroll(num,mode)來(lái)移動(dòng)游標(biāo)位置,如:
cursor.scroll(1,mode='relative') # 相對(duì)當(dāng)前位置移動(dòng) cursor.scroll(2,mode='absolute') # 相對(duì)絕對(duì)位置移動(dòng)
八、獲取最后的自增id值(lastrowid)
id=cursor.lastrowid
九、關(guān)閉游標(biāo)和鏈接
cursor.close() #先關(guān)閉游標(biāo) conn.close() #再關(guān)閉連接
看完了這篇文章,相信你對(duì)MySQL數(shù)據(jù)庫(kù)的操作案例有了一定的了解,想了解更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。