我是靠谱客的博主 无辜菠萝,最近开发中收集的这篇文章主要介绍python连接MySQL进行查询、修改、关闭的操作,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

写一个连接数据库的class
要求:三个功能(查询,修改,关闭连接)
参数不要写死,能实现环境实时切换

import pymysql
import pandas as pd

class ConnectSQL:
# 初始化函数,属性包括数据库地址、端口、用户名、密码、数据库名称
def init(self, localhost, port, username, password, dbname):
self.localhost = localhost
self.port = port
self.username = username
self.password = password
self.dbname = dbname
self.conn = self.connectMysql()

# 打开数据库连接
def connectMysql(self):
    # 将connect()中的参数定义在一个字典类型的对象config中,然后将这个字典对象传进connect方法中
    config = {'host': self.localhost, 'user': self.username, 'password': self.password, 'db': self.dbname}
    try:
        conn = pymysql.connect(charset="utf8", **config)         # connect方法进行数据库连接
    except :
        print("%s 数据库连接失败" % self.localhost)
        exit()
    print("%s 数据库连接成功" % self.localhost)
    return conn

# 查询数据库
def selectSql(self, sql):

    # DataFrame中的行列数量太多,print打印出来会省略中间显示...默认是显示100行
    pd.set_option('display.max_columns', 5000)  # 设置显示的最大列数
    pd.set_option('display.max_rows', 5000)  # 设置显示的最大的行数
    pd.set_option('display.width', 1000)  # 设置的显示的宽度,防止轻易换行
    # pd.set_option('display.height', 1000)  # 注意该方法执行的时候会报错,不存在display.height

    # 使用cursor()方法获取操作游标
    cursor = self.conn.cursor()
    li = []
    try:
        # 执行SQL语句
        cursor.execute(sql)
        # 获取所有结果记录列表
        results = cursor.fetchall()
        results = list(map(list, results))      # 将获取到的元组结果转换为列表格式
        # 获取字段信息之后,只保留字段名
        col = cursor.description
        for i in range(len(col)):
            li.append(col[i][0])
        # 以类似excel的二维表形式,格式化展示查询结果,第一个参数是内容,第二个是首行显示(列名),如果左侧需要展示行名需加上index参数
        data = pd.DataFrame(results, columns=li)
        print(data)
    except:
        print("Error: 数据查询失败,请检查SQL")

# 更新数据库
def updateSql(self, sql):
    # 使用cursor()方法获取操作游标
    cursor = self.conn.cursor()
    try:
        # 执行SQL语句
        cursor.execute(sql)
        # 提交到数据库执行
        self.conn.commit()
        print("数据库更新成功")
    except:
        print("Error: 数据更新失败,请检查SQL")

# 关闭数据库
def closeSql(self):
    try:
        self.conn.close()
        print("%s 数据库关闭成功" % self.localhost)
    except:
        print("%s 数据库关闭失败" % self.localhost)

db = ConnectSQL(‘数据库地址’, ‘端口’, ‘用户名’, ‘密码’, ‘数据库名称’)
db.selectSql(‘查询的sql语句’)
db.updateSql(‘更新的sql语句’)
db.closeSql()

最后

以上就是无辜菠萝为你收集整理的python连接MySQL进行查询、修改、关闭的操作的全部内容,希望文章能够帮你解决python连接MySQL进行查询、修改、关闭的操作所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(45)

评论列表共有 0 条评论

立即
投稿
返回
顶部