明輝手游網(wǎng)中心:是一個免費提供流行視頻軟件教程、在線學習分享的學習平臺!

MySQL適配器之PyMySQL的詳細介紹

[摘要]這篇文章主要為大家詳細介紹了MySQL適配器PyMySQL的相關資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下本文我們?yōu)榇蠹医榻B Python3 使用 PyMySQL 連接數(shù)據(jù)庫,并實現(xiàn)簡單...
這篇文章主要為大家詳細介紹了MySQL適配器PyMySQL的相關資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文我們?yōu)榇蠹医榻B Python3 使用 PyMySQL 連接數(shù)據(jù)庫,并實現(xiàn)簡單的增刪改查。

什么是 PyMySQL?

PyMySQL 是在 Python3.x 版本中用于連接 MySQL 服務器的一個庫,Python2中則使用mysqldb。

PyMySQL 遵循 Python 數(shù)據(jù)庫 API v2.0 規(guī)范,并包含了 pure-Python MySQL 客戶端庫。

PyMySQL 安裝
在使用 PyMySQL 之前,我們需要確保 PyMySQL 已安裝。

PyMySQL 下載

如果還未安裝,我們可以使用以下命令安裝最新版的 PyMySQL:


$ pip install PyMySQL

如果你的系統(tǒng)不支持 pip 命令,可以使用以下方式安裝:

1、使用 git 命令下載安裝包安裝(你也可以手動下載):


$ git clone https://github.com/PyMySQL/PyMySQL
$ cd PyMySQL/
$ python3 setup.py install

2、數(shù)據(jù)庫操作實例,直接上代碼。


import pymysql
import datainfo
import time

#獲取參數(shù)

host = datainfo.host
username = datainfo.username
password = datainfo.password
database = datainfo.db

print()

#測試數(shù)據(jù)庫連接
def testconnect():

 #打開數(shù)據(jù)庫鏈接

 db = pymysql.connect(host,username,password,database)

 #使用cursor() 方法創(chuàng)建一個游標對象 cursor

 cursor = db.cursor()

 #使用execute()方法執(zhí)行SQL查詢

 cursor.execute("select version()")

 #使用fetchone ()獲取單條數(shù)據(jù)

 data = cursor.fetchone()

 print(data)

 db.close()

#插入數(shù)據(jù)庫
def InsertDate():
 #打開數(shù)據(jù)庫鏈接

 db = pymysql.connect(host,username,password,database,charset='utf8')

 #使用cursor() 方法創(chuàng)建一個游標對象 cursor

 cursor = db.cursor()

 create_time = time.strftime('%Y-%m-%d %H:%M:%S')
 update_time = time.strftime('%Y-%m-%d %H:%M:%S')
 start_time = time.strftime('%Y-%m-%d %H:%M:%S')
 end_time = time.strftime('%Y-%m-%d %H:%M:%S')
 remark = "測試插入信息"
 print("開始")
 #Sql 插入語句
 sql = "insert into demo(start_time,end_time,creat_time,update_time,remark) " \
   "VALUES ('%s','%s','%s','%s','%s')"\
   %(start_time,end_time,create_time,update_time,remark)
 try:
  #執(zhí)行sql
  print("執(zhí)行插入")
  tt = cursor.execute(sql)
  print(tt)
  db.commit()
 except UnicodeEncodeError as e :
  #發(fā)生錯誤時回滾
  print(e)
  db.rollback()
 db.close()


#查詢操作
def selectData():
 db = pymysql.connect(host, username, password, database, charset='utf8')

 # 使用cursor() 方法創(chuàng)建一個游標對象 cursor

 cursor = db.cursor()

 sql = "select * from demo where id >='%d'" %(1)
 try:
  #執(zhí)行sql
  print("執(zhí)行查詢")
  cursor.execute(sql)
  results = cursor.fetchall()
  for row in results:
   id = row[0]
   start_time = row[1]
   end_time = row[2]
   create_time = row[3]
   update_time = row[4]
   remark = row[5]
   #打印結果
   print("id = %d,start_time=%s,end_time=%s,create_time=%s,update_time=%s,remark=%s" %(id,start_time,end_time,create_time,update_time,remark))

  db.commit()
 except UnicodeEncodeError as e :
  #發(fā)生錯誤時回滾
  print(e)

 db.close()

#更新操作
def update_data():
 db = pymysql.connect(host, username, password, database, charset='utf8')

 # 使用cursor() 方法創(chuàng)建一個游標對象 cursor

 cursor = db.cursor()
 update_time = time.strftime('%Y-%m-%d %H:%M:%S')
 sql = "update demo set update_time ='%s' where id >='%d' " %(update_time,1)
 try:
  #執(zhí)行sql
  print("執(zhí)行更新")
  cursor.execute(sql)

  db.commit()
 except UnicodeEncodeError as e :
  #發(fā)生錯誤時回滾
  print(e)
  db.rollback()
 db.close()

#刪除操作
def delete_Date():
 db = pymysql.connect(host, username, password, database, charset='utf8')

 # 使用cursor() 方法創(chuàng)建一個游標對象 cursor

 cursor = db.cursor()

 sql = "delete from demo where id <'%d' " %(1)
 try:
  #執(zhí)行sql
  print("執(zhí)行刪除")
  cursor.execute(sql)

  db.commit()
 except UnicodeEncodeError as e :
  #發(fā)生錯誤時回滾
  print(e)
  db.rollback()
 db.close()


if __name__ == '__main__':
 testconnect()
 InsertDate()
 selectData()
 update_data()
 delete_Date()

以上就是MySQL適配器之PyMySQL的詳細介紹的詳細內(nèi)容,更多請關注php中文網(wǎng)其它相關文章!


學習教程快速掌握從入門到精通的SQL知識。