Python3-2020-測試開發-25- 操作資料庫(MySQL)
阿新 • • 發佈:2020-07-24
1. 匯入模組
import pymysql
2. 建立資料庫連線
# 創建於資料庫的連線 db = pymysql.connect( host='localhost', user='root', password='123456', db='mybatis', port=3306, charset='utf8' )
3. 建立遊標
#建立遊標 cur = db.cursor()
4. sql語句
#sql sql = "select * from orders;"
5. 執行sql語句
cur.execute(sql)
5.1 執行插入語句
sql ="insert into orders(user_id,number,createtime) values (%s,%s,%s);" # 插入單條資料 cur.execute(sql,values) # 插入多條資料 cur.executemany(sql,values)
6. 獲取結果
res = cur.fetchall()print(res)
具體例子:
# coding=utf8 import pymysql sql2 = "" def select_db(): try: # 創建於資料庫的連線 db = pymysql.connect( host='localhost', user='root', password='123456', db='mybatis', port=3306, charset='utf8' )print("連線成功") #建立遊標 cur = db.cursor() #sql sql = "select * from orders;" cur.execute(sql) res = cur.fetchall() print(res) return res except Exception as e: print(e) finally: cur.close() db.close() def insert_db(values): try: # 創建於資料庫的連線 db = pymysql.connect( host='localhost', user='root', password='123456', db='mybatis', port=3306, charset='utf8' ) print("連線成功") #建立遊標 cur = db.cursor() sql ="insert into orders(user_id,number,createtime) values (%s,%s,%s);" # 插入單條資料 #cur.execute(sql,values) # 插入多條資料 cur.executemany(sql,values) # 提交事務 db.commit() except Exception as e: print(e) db.rollback() finally: db.close() cur.close() # insert_db([(10,'11111','2015-02-04 13:22:35'),(10,'11111','2015-02-04 13:22:35'),(10,'11111','2015-02-04 13:22:35'),(10,'11111','2015-02-04 13:22:35'),]) result = select_db() for res in result: id = res[0] u_id = res[1] num = res[2] c_time = res[3] note = res[4] print("id:",id,"u_id:",u_id,"num:",num,"c_time:",c_time,"note:",note)