大家好,我是考100分的小小码 ,祝大家学习进步,加薪顺利呀。今天说一说python自动化之pymysql库连接mysql数据库封装成类,希望您对编程的造诣更进一步.
import pymysql
if __name__ == ‘__main__‘:
host = "被访问数据库的ip地址或者域名"
port = 端口号
user = "连接数据库的用户名"
password = "连接数据库的密码"
sql = "要查询的SQL语句 "
# 连接一个给定的数据库,autocommit 默认是False,改成True后会自动帮你提交sql命令
mysql = pymysql.connect(host=host,user= user,password=password,port=port,charset="utf8",autocommit=True)
# 建立游标用来执行数据库操作
cursor = mysql.cursor()
# 执行sql命令
cursor.execute(sql)
#提交sql命令
mysql.commit()
# fetchone() :返回单个的元组,也就是一条记录(row),如果没有结果 则返回 None
# fetchall() : 返回多个列表套元组,即返回多个记录(rows),如果没有结果 则返回 ()
# 获取前n行数据 data = cursor.fetchmany(3) 获取前三行数据,元组包含元组
# 需要注明:在MySQL中是NULL,而在Python中则是None
data = cursor.fetchone()
print(data)
# 关闭游标
cursor.close()
# 关闭数据库连接
mysql.close()
以下是将pymysql要用到的功能进行了封装
代码100分
代码100分class MysqlHandler:
#建立数据库连接,新建一个查询页面
def __init__(self):
# port要转为int,这里的各项值是利用的封装好的配置文件configparser库进行的传入section,option进行的读取
self.mysql = pymysql.connect(host= config.handles.get_value("mysql", "connection"),
user = config.handles.get_value("mysql", "user"),
password=config.handles.get_value("mysql", "password"),
port= int(config.handles.get_value("mysql", "port")), charset="utf8", autocommit=True)
self.cursor = self.mysql.cursor(pymysql.cursors.DictCursor) # fetchone 是字典 fetchall是list套dict
#获取查询结果,结果是dict,上面建立游标指定了是dict
def query_one(self,sql):
self.cursor.execute(sql)
data = self.cursor.fetchone()
return data
#关闭查询页面,关闭连接
def close(self):
self.cursor.close()
self.mysql.close()
python自动化之pymysql库连接mysql数据库封装成类
原文地址:https://www.cnblogs.com/xintiaoab/p/13439502.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
转载请注明出处: https://daima100.com/6865.html