Python数据分析基础篇【Python操作Mysql数据库】


前言

MySQL 是最流行的关系型数据库管理系统,在 WEB 应用方面 MySQL 是最好的 RDBMS(Relational Database Management System:关系数据库管理系统)应用软件之一。本文需要读者拥有SQL功底和Python第三方模块使用的知识。

Mysql基础语法学习

本人结合个人学习经验,总结了下面三个教程,对我本人帮助很大,小伙伴们,按照顺序学习,一定会有收获。
博客园21分钟爆赞教程
菜鸟教程
C语言中文网教程

Python操作MySQL

博客园爆赞教程

简单入门

import pymysql

db = pymysql.connect(host='localhost', user='root', password='123456', database='niuke', autocommit=True)
db.set_charset('utf8mb4')
strr = "insert into `niuke`.`new` values(%s,%s);"
data = [('556', '655'), ('142', '526'), ('258', '687'), ('621', '963')]
with db.cursor() as cursor:   # 创建游标
    try:
        # 插入数据方法1
        # sql="insert into `niuke`.`new` values('2222','33333');"
        # cursor.execute(sql)

        # 插入数据方法2
        cursor.executemany(strr, data)
    except:
        db.rollback()  # 不能插入,错误,回滚。

封装

import pymysql


class Mysql_Object():
    def __init__(self, host, user, password, database, port=3306, charset='utf8'):
        self.host = host
        self.user = user
        self.password = password
        self.database = database
        self.port = port
        self.charset = charset

    def select_sql(self, sql, size=0):
        '''
        查询sql语句
        :param sql 传入查询的sql语句,字符串
        :param size 返回结果的记录条数,如果没有输入默认输出全部条数
        :return: self.count 返回查询的记录的总数,slef.res 返回查询的结果
        '''
        self.con = pymysql.connect(host=self.host, user=self.user, password=self.password, database=self.database,
                                   port=self.port, charset=self.charset)
        self.cur = self.con.cursor()  # 建立游标
        self.sql = sql
        # 判读是否是查询语句
        if self.sql.startswith('select'):
            self.cur.execute(self.sql)  # 获取数据库结果
            self.count = self.cur.rowcount  # 统计查询记录数
            # 通过if语句进行判断
            if size == 0:
                self.res = self.cur.fetchall()  # 输出全部结果
            elif size != 0:
                self.res = self.cur.fetchmany(size)  # 输出指定数值

            self.cur.close()
            self.con.close()  # 关闭连接
        return self.count, self.res

    def excute_sql(self, sql):
        '''
        :param sql 输入增删改的sql语句
        :return:
        '''
        self.con = pymysql.connect(host=self.host, user=self.user, password=self.password, port=self.port,
                                   database=self.database,
                                   charset=self.charset, autocommit=True)
        self.cur = self.con.cursor()  # 建立游标
        self.sql = sql

        if self.sql.startswith('insert'):
            print('插入语句', self.sql)
            self.cur.execute(self.sql)  # 执行语句
            self.cur.close()  # 关闭连接
            self.con.close()
        if self.sql.startswith('delete'):
            print('删除语句', self.sql)
            self.cur.execute(self.sql)  # 执行语句
            self.cur.close()  # 关闭连接
            self.con.close()
        if self.sql.startswith('update'):
            print('更新语句', self.sql)
            self.cur.execute(self.sql)  # 执行语句
            self.cur.close()  # 关闭连接
            self.con.close()


# 调用
m = Mysql_Object('localhost', 'root', '123456', 'niuke')
print(m.select_sql('select * from new', ))  # 查询结果
m.excute_sql("update new set name='王六' where name='牛牛牛'")  # 更新语句
m.excute_sql("delete from new where name='111'")  # 删除语句
m.excute_sql("insert into new VALUES('赵七','235')")  # 插入语句

MySQL可视化工具推荐

国产SQLstudio

在这里插入图片描述

SQL Studio是一款可创建多个连接的Web版数据库管理开发工具,让你从单一应用程序可同时连接Oracle、PostgreSQL、MySQL、SQLite、SQL Server、Oracle、DM(达梦)、KingBase(人大金仓)、MongoDB、Hadoop等数据库。

网盘下载

链接:https://pan.baidu.com/s/16d3PladsS8ocZ7Sd8-anpQ?pwd=PypY
提取码:PypY
–来自百度网盘超级会员V4的分享

麦聪软件官网下载

官网下载地址
在这里插入图片描述

官方教程

bilibili官方视频教程

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

额狮虎

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值