(二)python实战——使用pymysql完成mysql数据库的增、删、查、改操作案例

前言

本节内容是关于python环境中使用pymysql实现mysql数据库的操作,这里我们以app这个表为本节内容的操作表,完成python环境下,对mysql数据库的表的增删查改操作。在开始本节内容之前,我们首先要安装好我们的python环境以及数据库环境。

正文

①在数据库中创建app表,其结构如下,包含id和name字段

CREATE TABLE `app` (
  `id` varchar(255) COLLATE utf8mb4_general_ci NOT NULL COMMENT '主键ID',
  `name` varchar(255) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '名称',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

 ②使用以下命令安装pymysql环境依赖,操作mysql数据库

pip install PyMySQL

(二)python实战——使用pymysql完成mysql数据库的增、删、查、改操作案例_第1张图片

 ③创建一个my_mysql_pymysql.py类,初始化mysql数据库的连接,以及创建关闭连接mysql的方法

# 使用pymysql操作数据库
import pymysql


class MyPymysql(object):
    """
    初始化数据库连接
    """

    def __init__(self):
        self.conn_pymysql = pymysql.connect(host='192.168.110.88',
                                            port=3306,
                                            user='root',
                                            password='root',
                                            database='ht-atp',
                                            charset='utf8')
        self.cursor = self.conn_pymysql.cursor()

    """
    关闭数据库连接
    """

    def close(self):
        self.cursor.close()
        self.conn_pymysql.close()

(二)python实战——使用pymysql完成mysql数据库的增、删、查、改操作案例_第2张图片

 ④使用mysql连接对象,查询app表中的全部数据

if __name__ == '__main__':
    #创建mysql连接对象
    conn = MyPymysql()
    pymysql = conn.conn_pymysql
    cursor = conn.cursor

    # 查询app表全部数据
    sql = 'select * from app'
    cursor.execute(sql)
    rows = cursor.fetchall()
    for row in rows:
        print(row)
    print('-----------------查询结束------------------')

    # 关闭数据库连接
    conn.close()

(二)python实战——使用pymysql完成mysql数据库的增、删、查、改操作案例_第3张图片

 ⑤使用mysql连接对象,新增多条数据到app表

if __name__ == '__main__':
    conn = MyPymysql()
    pymysql = conn.conn_pymysql
    cursor = conn.cursor

    # 保存app表数据
    sql = 'INSERT INTO app(id,name) VALUES(%s, %s)'
    datas = [('7', 'jack'), ('8', 'zhangsan'), ('9', 'wangwu')]
    result = cursor.executemany(sql, datas)
    print("result:", result)
    pymysql.commit()
    print('-----------------保存数据结束------------------')

    # 关闭数据库连接
    conn.close()

(二)python实战——使用pymysql完成mysql数据库的增、删、查、改操作案例_第4张图片

 ⑥使用mysql连接对象,更新app表数据id为7的数据

if __name__ == '__main__':
    conn = MyPymysql()
    pymysql = conn.conn_pymysql
    cursor = conn.cursor

    # 更新app表数据
    sql = "UPDATE app SET name='%s' WHERE id='%s'"
    sql = sql % ("xiaoming", "7")
    print("sql:", sql)
    result = cursor.execute(sql)
    print("result:", result)
    pymysql.commit()
    print('-----------------更新数据结束------------------')

 
    # 关闭数据库连接
    conn.close()

(二)python实战——使用pymysql完成mysql数据库的增、删、查、改操作案例_第5张图片

 ⑦使用mysql连接对象,删除app表数据id为7的数据

if __name__ == '__main__':
    conn = MyPymysql()
    pymysql = conn.conn_pymysql
    cursor = conn.cursor

    # 删除app表数据
    sql = "DELETE FROM app WHERE id='%s'"
    sql = sql % "4"
    print("sql:", sql)
    result = cursor.execute(sql)
    print("result:", result)
    pymysql.commit()
    print('-----------------删除数据结束------------------')

    # 关闭数据库连接
    conn.close()

(二)python实战——使用pymysql完成mysql数据库的增、删、查、改操作案例_第6张图片

⑧使用mysql连接对象,根据id批量删除app表中数据

if __name__ == '__main__':
    conn = MyPymysql()
    pymysql = conn.conn_pymysql
    cursor = conn.cursor

    # 批量删除app表数据
    sql = "DELETE FROM app WHERE id in {}"
    data = ('7', '8', '9')
    sql = sql.format(data)
    print("sql:", sql)
    result = cursor.execute(sql)
    print("result:", result)
    pymysql.commit()
    print('-----------------批量删除数据结束------------------')

    # 关闭数据库连接
    conn.close()

(二)python实战——使用pymysql完成mysql数据库的增、删、查、改操作案例_第7张图片

结语

至此,关于使用pymysql完成mysql数据库的增、删、查、改等操作案例到这里就结束了,我们下期见。。。。。。

你可能感兴趣的:(python,python)