python操作数据库mysql

本文介绍了如何使用Python连接和操作MySQL数据库,包括数据库初始化、连接、插入、查询、更新和删除数据等基本操作。

01、mysql数据库

简介:mysql是一款应用比较广泛的开源数据库,因此在python中也经常被用到。

下面就数据库的常规操作,连接,增删改查几个操作进行讲述。

2.1 定义数据库类,数据库初始化

      主要包含 ip(host)、user、password、database等参数

    def __init__(self,host,user,password,database):
        self.host = host
        self.user = user
        self.password = password
        self.database = database
        self.cursor = []
        self.db = []
        self.datas = []

2.2 连接数据库
 

    def mysql_connect(slef):
        # 打开数据库连接,参数1:主机名或IP;参数2:用户名;参数3:密码;参数4:数据库名
        self.db = pymysql.connect(self.host, self.user, self.password, self.database)

        # 使用cursor()创建一个cursor对象

        self.cursor = db.cursor

        self.cursor.execute("SELECT VERSION()")

        data = cursor.fetchone()

        print("Database version: %s" % data)
        self.db.close()

2.2  插入数据表

    def mysql_insert(self):
         SQL_INSERT_A_ITEM = "INSERT INTO info(time,msg) VALUES(2023,"insert table");"


        try:
            self.cursor.execute(SQL_INSERT_A_ITEM)
            self.db.commit()
        except Exception as e:
            print('插入数据失败')
            print(e)
            self.db.rollback()

2.3  查询数据表

     查询数据表info的全部信息

    def mysql_query(self):
       
        SQL_QUERY_ALL = "SELECT * FROM info;"
 
        """查询数据"""
        # 查询所有数据
        self.cursor.execute(SQL_QUERY_ALL)
 
        # 元组数据
        rows = self.cursor.fetchall()
 
        # 打印结果
        for row in rows:
            id = row[0]
            name = row[1]
            age = row[2]
            print('id:', id, ',time:', time, 'msg:', msg)

2.4 更改数据

    更新数据项内容

    def mysql_update(self,time,msg,id):
 
        SQL_UPDATE = "UPDATE info SET time='%s',msg=%s WHERE id=%s"
 

        """
        更新数据

        """

        sql_update = SQL_UPDATE % ("2023-02", "hello", 100)
        
        print(sql_update)
 
        try:
            self.cursor.execute(sql_update)
            self.db.commit()
        except Exception as e:
            self.db.rollback()
            print('更改数据异常')
            print(e)

2.5 删除数据

     删除 某条id数据

    def mysql_delete(self,id):

        SQL_DELETE = "DELETE FROM info WHERE id=%d"
 

        try:
            # 删除的完整sql
            sql_del = SQL_DELETE % (id)
            self.cursor.execute(sql_del)
            #同步
            self.db.commit()
        except Exception as e:
            self.db.rollback()
            print(e)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

reset2021

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

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

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

打赏作者

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

抵扣说明:

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

余额充值