我是靠谱客的博主 鲤鱼百合,最近开发中收集的这篇文章主要介绍【工程实践】python借助pymysql操作mysql数据库1.前言2.任务实现3.后记,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

1.前言

1-1 简介

         数据库是一个共享的硬盘,可以多人同时地进行访问、更改数据。为了方便存储与多人访问,将实体数据存放在mysql数据库中。

1-2 任务背景

        处理好的实体数据一直以jsonline的格式进行存储,组内之间数据共享时,数据传输过于笨重,所以将实体数据存放在Mysql中,方便多人共同访问。

2.任务实现

        主要分为pymysql工具的下载、数据库的创建、数据的增删改查。数据库已经由运维在服务器上安装好。

2-1 pymysql 下载

        使用pip install 命令即可,安装完之后导入pymysql。

pip install pymysql

2-2 连接mysql

import pymsql​
import jsonlines
db = pymysql.connect(host='xxx.mysql.xxx.com',
                     user='user_name',
                     password='password',
                     database='user_database')

2-3 创建数据库表

        在指定的database下创建了表名为'ENRIRY_INFO_TABLE'的数据表。并指定了表内容,指定数据类型ENTITY_ID为主键。

import pymsql​
db = pymysql.connect(host='xxx.mysql.xxx.com',
                     user='user_name',
                     password='password',
                     database='user_database')

# 使用 cursor() 方法创建一个游标对象 cursor
cursor = db.cursor()
create_basic_table_sql = """
     CREATE TABLE IF NOT EXISTS ENRIRY_INFO_TABLE(
         ENTITY_ID     CHAR(50) NOT NULL,
         ENTIYT_NAME   CHAR(50),
         ENTITY_BASCINFO CHAR(50),
         ENTITY_SUMMARY CHAR(50),
         ENTITY_ORDER    INT,
         ENTITY_LABEL    CHAR(50),
            )"""
status = cursor.execute(create_basic_table_sql)
print("status: ", status)

2-4 写入数据

def get_entity_value():
    entity_id = '4420182'
    entity_name = '北京五棵松体育中心棒球场'
    entity_desc = '北京市海淀区棒球场'
    entity_summary ='北京五棵松体育中心棒球场是2008年北京奥运会的棒球项目的临时比赛场馆'
    entity_order = 0
    entity_label = '体育'
    return   "VALUES({entity_id},{entity_name},{entity_desc},{entity_summary},{entity_order},{entity_label})".format(entity_id = '''+ str(entity_id) +''' ,entity_name = ''' + str(entity_name)+''',entity_desc = ''' + str(entity_desc)+''',entity_summary =''' + str(entity_summary)+''' ,entity_order = entity_order,entity_label = '''+ str(entity_label)+''')
def write_entity_inforamtion(db,information):
    #创建游标
    cursor = db.cursor()
    try:
        insert_basic_table_sql = "INSERT INTO  ENRIRY_INFO_TABLE (ENTITY_ID,
         ENTIYT_NAME,ENTITY_BASCINFO,ENTITY_SUMMARY,ENTITY_ORDER,ENTITY_LABEL)" + information
        #执行
        cursor.execute(insert_basic_table_sql)
        #提交
        db.commit()
    except Exception as e :
        #回滚
        db.rollback()
information = get_entity_value()
write_entity_inforamtion(db,information)
# 写入完成后,关闭数据库连接
db.close()

2-5 查询数据

def serach(db):
    cursor = db.cursor()
    search_basic_sql = """SELECT * FROM ENRIRY_INFO_TABLE  LIMIT 100"""
    cursor.execute(search_basic_sql)
    # 获取所有记录列表
    results = cursor.fetchall()
    return results
search_result = search(db)
# 查询完成后,关闭数据库连接
db.close()

2-6 修改数据

def update_inforamtion(db):
    #创建游标
    cursor = db.cursor()
    try:
        update_basic_table_sql = f"update ENRIRY_INFO_TABLE set ENTIYT_NAME ='五棵松' where entity_id = '4420182';"
        #执行
        cursor.execute(update_basic_table_sql)
        #提交
        db.commit()
    except Exception as e :
        #回滚
        db.rollback()

2-7 删除数据

def delete_inforamtion(db):
    #创建游标
    cursor = db.cursor()
    try:
        delete_basic_table_sql = f"delete from ENRIRY_INFO_TABLE  where entity_id = '4420182';"
        #执行
        cursor.execute(update_basic_table_sql)
        #提交
        db.commit()
    except Exception as e :
        #回滚
        db.rollback()

3.后记

        reference:python操作mysql数据库_是佳佳呀~的博客-CSDN博客_python mysql

最后

以上就是鲤鱼百合为你收集整理的【工程实践】python借助pymysql操作mysql数据库1.前言2.任务实现3.后记的全部内容,希望文章能够帮你解决【工程实践】python借助pymysql操作mysql数据库1.前言2.任务实现3.后记所遇到的程序开发问题。

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

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

评论列表共有 0 条评论

立即
投稿
返回
顶部