【Python】學習筆記5-操作mysql資料庫pymysql

來源:互聯網
上載者:User

標籤:rod   sql資料庫   pass   cursor   relative   pos   .com   查詢   連接埠號碼   

import pymysql
#其他資料庫,比如oracle 模組是pyoracle

#1、連結資料庫mysq ip 連接埠號碼 密碼 賬戶 資料庫
#2、建立遊標
#3、執行sql
#4、擷取結果
#5、關閉串連,關閉遊標


# 1、show table 例子
 1 # conn = pymysql.connect(host = ‘x.x.x.x‘, 2 #                 user = ‘jxz‘,passwd = ‘123456‘, 3 #                 port = 3306, db = ‘jxz‘, charset=‘utf8‘)#charset 必須是utf8不能是utf-8 4 # cur = conn.cursor() #建立遊標,遊標你就認為是倉庫管理員 5 # # cur.execute(‘show tables;‘) #執行sql語句 6 # cur.execute(‘select * from bt_stu limit 5;‘) #執行sql語句 7 # # print(cur.execute(‘show tables;‘)) #執行sql語句 返回 10 8 # print(cur.fetchall()) #擷取sql語句執行的結果 9 # res = cur.fetchall() #擷取sql語句執行的結果 ((‘bt_stu‘,), (‘hkk‘,), (‘hkk2‘,), (‘jxz_stu‘,), (‘products_nyy‘,), (‘stu‘,), (‘user‘,), (‘user_nyy‘,), (‘user_passwd‘,), (‘zmx‘,))10 # print(res[0][3])11 # cur.close() #關閉遊標12 # conn.close() #關閉串連

# # 2、查詢例子
# conn = pymysql.connect(host = ‘X.X.X.X‘,#                 user = ‘jxz‘,passwd = ‘123456‘,#                 port = 3306, db = ‘jxz‘, charset=‘utf8‘)#charset 必須是utf8不能是utf-8# cur = conn.cursor() #建立遊標,遊標你就認為是倉庫管理員# cur.execute(‘select * from bt_stu limit 2;‘) #執行sql語句# # res = cur.fetchall() #擷取sql語句執行的結果,把結果放到元組(數組)裡面,根據數組取結果,如 res[0][3]#     #((1, ‘賈夢緣‘, 1, ‘18612341231‘, ‘靠山屯‘, 1), (2, ‘處長‘, 0, ‘19212345678‘, ‘靠山屯‘, 1), (4, ‘處長‘, 0, ‘19312345678‘, ‘靠山屯‘, 1), (5, ‘處長‘, 0, ‘19312345671‘, ‘靠山屯‘, 1), (6, ‘zdq‘, 0, ‘12312345678‘, ‘靠山屯‘, 1))# # res = cur.fetchall() #擷取所有結果# res = cur.fetchone() #只擷取一條結# res = cur.fetchone() #再擷取剩下的 第一條結果 #(2, ‘處長‘, 0, ‘19212345678‘, ‘靠山屯‘, 1)# res = cur.fetchall() #取所有剩下的# cur.scroll(0,mode=‘absolute‘)  #移動遊標,到最前面,#一般很少去移動遊標# cur.scroll(-10,mode=‘relative‘)  #移動遊標,相對於當前位置,-X是向前移動X個,X是向後移動X個# res = cur.fetchone()# print(res)# cur.close() #關閉遊標# conn.close() #關閉串連

 



# 3、insert
 1 # insert update delete 執行這些sql,必須要提交,才會生效 ,conn.commit 2 # conn = pymysql.connect(host = ‘X.X.X.X‘, 3 #                 user = ‘jxz‘,passwd = ‘123456‘, 4 #                 port = 3306, db = ‘jxz‘, charset=‘utf8‘)#charset 必須是utf8不能是utf-8 5 # cur = conn.cursor() #建立遊標,遊標你就認為是倉庫管理員 6 # sql = "INSERT INTO `bt_stu` ( `real_name`, `sex`, `phone`, `class`, `type`) VALUES ( ‘cm1‘, ‘1‘, ‘15712341231‘, ‘靠山屯‘, ‘1‘);" 7 # cur.execute(sql) #執行sql語句 8 # conn.commit() 9 # cur.close() #關閉遊標10 # conn.close() #關閉串連

 


# 4、cursor 不輸出元組,輸出字典
 1 conn = pymysql.connect(host = ‘X.X.X.X‘, 2                 user = ‘jxz‘,passwd = ‘123456‘, 3                 port = 3306, db = ‘jxz‘, charset=‘utf8‘)#charset 必須是utf8不能是utf-8 4 cur = conn.cursor(cursor=pymysql.cursors.DictCursor) #建立遊標,遊標你就認為是倉庫管理員 5 sql = "select * from bt_stu limit 2" 6 cur.execute(sql) #執行sql語句 7 print(cur.fetchone()) #一條語句,返回就是一條字典 8 # print(cur.fetchall()) #數組裡麵包含字典[{‘phone‘: ‘18612341231‘, ‘id‘: 502, ‘sex‘: 1,。。。。 9 cur.close() #關閉遊標10 conn.close() #關閉串連

 

【Python】學習筆記5-操作mysql資料庫pymysql

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.