123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- # -*- coding: utf-8 -*-
- """
- 数据库连接及操作
- """
- import pymysql
- class AigcMysqlHelper:
- @classmethod
- def connect_mysql(cls):
- connection = pymysql.connect(
- host="rm-t4na9qj85v7790tf84o.mysql.singapore.rds.aliyuncs.com",
- port=3306, # 端口号
- user="crawler_admin", # mysql用户名
- passwd="cyber#crawler_2023", # mysql用户登录密码
- db="aigc-admin-prod", # 数据库名
- # 如果数据库里面的文本是utf8编码的,charset指定是utf8
- charset="utf8")
- return connection
- @classmethod
- def get_values(cls, sql, params=None):
- try:
- # 连接数据库
- connect = cls.connect_mysql()
- # 返回一个 Cursor对象
- mysql = connect.cursor()
- # 执行 sql 语句
- mysql.execute(sql, params)
- # fetchall方法返回的是一个元组,里面每个元素也是元组,代表一行记录
- data = mysql.fetchall()
- # 关闭数据库连接
- connect.close()
- # 返回查询结果,元组
- return data
- except Exception as e:
- print(f"get_values异常:{e}\n")
- @classmethod
- def update_values(cls, sql):
- # 连接数据库
- connect = cls.connect_mysql()
- # 返回一个 Cursor对象
- mysql = connect.cursor()
- try:
- # 执行 sql 语句
- res = mysql.execute(sql)
- # 注意 一定要commit,否则添加数据不生效
- connect.commit()
- return res
- except Exception as e:
- # 发生错误时回滚
- connect.rollback()
- # 关闭数据库连接
- connect.close()
|