欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 运维知识 > 数据库 >内容正文

数据库

mysql适配器_MySQL适配器PyMySQL详解

发布时间:2025/4/16 数据库 56 豆豆
生活随笔 收集整理的这篇文章主要介绍了 mysql适配器_MySQL适配器PyMySQL详解 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

本文我们为大家介绍 Python3 使用 PyMySQL 连接数据库,并实现简单的增删改查。

什么是 PyMySQL?

PyMySQL 是在 Python3.x 版本中用于连接 MySQL 服务器的一个库,Python2中则使用mysqldb。

PyMySQL 遵循 Python 数据库 API v2.0 规范,并包含了 pure-Python MySQL 客户端库。

PyMySQL 安装

在使用 PyMySQL 之前,我们需要确保 PyMySQL 已安装。

PyMySQL 下载地址:https://github.com/PyMySQL/PyMySQL。

如果还未安装,我们可以使用以下命令安装最新版的 PyMySQL:

$ pip install PyMySQL

如果你的系统不支持 pip 命令,可以使用以下方式安装:

1、使用 git 命令下载安装包安装(你也可以手动下载):

$ git clone https://github.com/PyMySQL/PyMySQL

$ cd PyMySQL/

$ python3 setup.py install

2、数据库操作实例,直接上代码。

import pymysql

import datainfo

import time

#获取参数

host = datainfo.host

username = datainfo.username

password = datainfo.password

database = datainfo.db

print()

#测试数据库连接

def testconnect():

#打开数据库链接

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

#使用cursor() 方法创建一个游标对象 cursor

cursor = db.cursor()

#使用execute()方法执行SQL查询

cursor.execute("select version()")

#使用fetchone ()获取单条数据

data = cursor.fetchone()

print(data)

db.close()

#插入数据库

def InsertDate():

#打开数据库链接

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

#使用cursor() 方法创建一个游标对象 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:

#执行sql

print("执行插入")

tt = cursor.execute(sql)

print(tt)

db.commit()

except UnicodeEncodeError as e :

#发生错误时回滚

print(e)

db.rollback()

db.close()

#查询操作

def selectData():

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

# 使用cursor() 方法创建一个游标对象 cursor

cursor = db.cursor()

sql = "select * from demo where id >='%d'" %(1)

try:

#执行sql

print("执行查询")

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 :

#发生错误时回滚

print(e)

db.close()

#更新操作

def update_data():

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

# 使用cursor() 方法创建一个游标对象 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:

#执行sql

print("执行更新")

cursor.execute(sql)

db.commit()

except UnicodeEncodeError as e :

#发生错误时回滚

print(e)

db.rollback()

db.close()

#删除操作

def delete_Date():

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

# 使用cursor() 方法创建一个游标对象 cursor

cursor = db.cursor()

sql = "delete from demo where id

try:

#执行sql

print("执行删除")

cursor.execute(sql)

db.commit()

except UnicodeEncodeError as e :

#发生错误时回滚

print(e)

db.rollback()

db.close()

if __name__ == '__main__':

testconnect()

InsertDate()

selectData()

update_data()

delete_Date()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持聚米学院。

总结

以上是生活随笔为你收集整理的mysql适配器_MySQL适配器PyMySQL详解的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。