• Python连接MySQL数据库(简单便捷)


    ??,本文中,使用到的工具有:Pycharm,Anaconda,MySQL 5.5,spyder(Anaconda)

    什么是 PyMySQL?

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

    一、??环境准备

    1、安装pymysql:

    进行Python连接mysql数据库之前,需要先安装一下pymysql。

    直接在终端执行下面的命令即可。(在此处我将指定1.0.2版本)

    pip install pymysql==1.0.2
    
    • 1

    2、查询安装:

    下载完成后,在终端输入 pip list 即可看到下图:

    pip list
    
    • 1

    可以看到我们的PyMySQL是1.0.2版本的。

    3、Anaconda下载pymysql:

    打开Anaconda,选择 Environments 点击右上方的的搜索框 输入 pymysql

    点击方框,即可下载

    方式一??:

    此处我们可以选择 spyder 或者 pycharm 首先为大家介绍一下 spyder 我们只需要直接导入 pymysql 库即可

    方式二??:

    4、Pycharm下载pymysql

    打开 Pycharm 选择文件,点击设置,

    下划,选择python解释器,这里我的Pycharm已经配置了Anaconda环境

    如果没有查询到 pymysql 可以在 Pycharm 终端中下载 pymysql 库

    以上我们的环境就准备好了,下面我们进行编写程序

    二、??代码编写,连接数据库

    1、导入数据库表

    import pymysql
    
    • 1

    数据库连接:

    连接数据库前,请先确认以下事项:

    • 连接数据库使用的用户名为 “root” ,密码为 “dai324542”,创建了数据库 runoob

    • 你可以可以自己设定或者直接使用root用户名及其密码

      db = pymysql.connect(host=‘localhost’,
      user=‘root’,
      password=‘dai324542’,
      database=‘runoob’,
      charset=‘utf8’)

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

      cursor = db.cursor()

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

      cursor.execute(“SELECT VERSION()”)

      使用 fetchone() 方法获取单条数据.

      data = cursor.fetchone()

      print (“数据库连接成功!”)

      关闭数据库连接

      db.close()

    2、创建数据库表

    # 创建表
    sql="""CREATE TABLE test (
              FIRST_  CHAR(20) NOT NULL,
              SECOND_  CHAR(20),
              THIRD_ INT,
              FOURTH_ CHAR(1),
              FIFTH_ FLOAT )"""
    # 运行sql语句
    cursor.execute(sql)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    这里我们所运用的sql语句是不是很熟悉了??

    下面即是运行结果了,再mysql中可以刷新看到,我输出了一个提示 victory

    3、数据库插入操作

    此处我只是随便进行了一个举例,通过更改创建表时的操作可以插入不同类型的数据

    try:
        sql = "insert into test(FIRST_,SECOND_,THIRD_,FOURTH_,FIFTH_) values ('MAC','MOTH','20','M','2000')"
    
        # 运行sql语句
        cursor.execute(sql)
        # 修改
        db.commit()
        # 关闭游标
        cursor.close()
        # 关闭连接
        db.close()
        print("victory!")
    except:
        print("false")
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14

    4、查询其中一个表的数据

    # 查询语句
    try:
        cursor = db.cursor()
        sql = "select * from student"
        cursor.execute(sql)
        result = cursor.fetchall()
        for data in result:
            print(data)
    except Exception:
        print("查询失败")
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

    5、删除表中的一条数据

    # SQL 删除语句
    sql = "DELETE FROM student WHERE Sno='20111107'"
    try:
       # 执行SQL语句
       cursor.execute(sql)
       # 向数据库提交
       db.commit()
    except:
       # 发生错误时回滚
       db.rollback()
    # 关闭连接
    db.close()
    # 成功提示
    print("victory!")
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14

    注意:Python中的MySQL默认事务打开,需要我们手动提交事务,否则操作无效

    写到这里,这篇博客就又又又结束了,很感谢大家的观看,如果对大家有所帮助希望可以留下一个小小的??,??。因才学疏浅,如果各位大佬发现其中存在错误,敬请指出,( _)!

  • 相关阅读:
    6.swagger完善:界面显示注释+多版本控制
    《HelloGitHub》第 73 期
    【Swift】【json】通过json字符串直接生成swift实体类
    古玩交易NFT数字藏品平台
    asp.net -web -pdf -预览-编辑 RAD PDF.NET cRACK
    如何缓解失业无收入焦虑状态?
    挂耳式蓝牙耳机哪家的好用,推荐几款实用的挂耳式耳机
    【高数】高数平面立体几何
    webpack的核心概念和作用
    Redis:send of 37 bytes failed with errno=10054
  • 原文地址:https://blog.csdn.net/m0_67391377/article/details/126040038