python数据库存 和 取 数据 ~~~~别磨叽了,拿来直接用吧

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用系列 2核4GB
简介: python数据库存 和 取 数据 ~~~~别磨叽了,拿来直接用吧

python数据库读取写入通用操作:

对数据库的增删改查基本上都是sql语句的变化,其他的没有什么区别

1、连接数据库 host、port、user、password、数据库名、字符类型

# TODO  数据库连接
conn = pymysql.connect(
    host='localhost',
    port=3306,
    user='root',
    passwd='123456',
    db='mofa',
    charset='utf8',
)

2、创建游标,进行下面的操作

# TODO 创建游标
cue=conn.cursor()

3、查询所需要的字段,就是编译所需要查询的数据所在列的sql语句

# TODO 查询所需要的字段数据(属性)
cue.execute("select name,comment from comments;")

4、通过fetchall获取所需要的数据

result=list(cue.fetchall())

5、读取数据写入文本

comment_list=open('冬奥会评论区的数据.txt', "w", encoding="utf-8")

冬奥会评论区的数据.txt : 带写入文本名称

“w” : write

encoding=“utf-8” : 编码格式


读取数据库数据并写入文本中

# TODO                鸟欲高飞,必先展翅
# TODO                 向前的人 :Jhon
import pymysql
# TODO  数据库连接
conn = pymysql.connect(
    host='localhost',
    port=3306,
    user='root',
    passwd='123456',
    db='mofa',
    charset='utf8',
)
# TODO 创建游标
cue=conn.cursor()
# TODO 查询所需要的字段数据(属性)
cue.execute("select name,comment from comments;")
# TODO 获取所需的数据      取   fetchall()
result=list(cue.fetchall())
print(result)
comment_list=open('冬奥会评论区的数据.txt', "w", encoding="utf-8")
for i in range(len(result)):
    name=result[i][0]
    comment=result[i][1]
    comment_list.write(name+", "+comment)
comment_list.close()

结果如下图所示,我们可以发现数据存进去了。但是我们发现读取的name和comment之间是以逗号隔开的,那是因为写入操作的时候是以逗号隔离写入的。comment_list.write(name+","+comment)** write写入是以逗号为间隔写入的,在这里你可以 以任何你想要作为间隔符号,当然也包括空格或者不添加任何间隔符号(但是这样会很丑)**image.png欧克,使用的时候只要记住修改里面的一部分即可。

💋1、连接数据库的基本配置,一般只需要修改password和数据库db即可

💋2、修改所需要查询字段即可(就是那一列的属性,我的表中只有name和comment两个属性)

💋3、我这里不是自己创建写入数据的txt文本,你需要自己创建一个

💋4、注意创建txt文本的目录,确保open的时候可以发现它(我这py文件和txt文本在一个目录下,即同级目录)

读取txt文本数据并写入数据库中

# TODO                鸟欲高飞,必先展翅
# TODO                 向前的人 :Jhon
import pymysql
import re
# 数据库连接
conn = pymysql.connect(
    host='localhost',
    port=3306,
    user='root',
    passwd='123456',
    db='mofa',
    charset='utf8',
)
def insert(conn, name, count):
    cue = conn.cursor()
    # 异常处理
    try:
        cue.execute(
            "insert into olypiccount"
            ""
            " (name,count) values(%s,%s)",
            [name, count, ])
        # 执行sql语句
    except Exception as e:
        print('Insert error:', e)
        conn.rollback()
    else:
        conn.commit()
def read():
    filename = './冬奥会人名出现次数.txt'
    # 按行读取txt文本文档
    with open(filename, 'r', encoding='UTF-8') as f:
        datas = f.readlines()
    # 遍历文件
    for data in datas:
        txt = re.split(': ', data)
        name = txt[0]
        count = txt[1]
        print("这是第一个name:",name)
        print("*"*100)
        print("这是第二个count:",count)
        insert(conn, name, count)
        # 调用insert方法
    print("数据插入完成!")
read()
conn.close()

欧克,使用的时候只要记住修改里面的一部分即可。*

💋1、连接数据库的基本配置,一般只需要修改password和数据库db即可

💋2、修改所需要查询字段即可(就是那一列的属性,我的表中只有name和comment两个属性)

💋3、打开读取的txt文本,readlines按行一行行读取。

💋4、遍历split切割开分别存进多个字段,这里没有上限


注意:读取数据库和写入数据库修改的只是sql语句 select==>insertimage.png可以发现数据库成功刷入数据库

存入数据库核心代码分析

filename = './冬奥会人名出现次数.txt'
    # 按行读取txt文本文档
    with open(filename, 'r', encoding='UTF-8') as f:
        datas = f.readlines()

💖1、filename是需要读取的txt文本(需要存入数据库的内容存放处)

💖2、with open 打开文本操作

💖3、filename 文本名称,如果不在一个目录下要写出相对地址。例如如果在上一data目录 应该写为 ./data/冬奥会人名出现次数.txt

💖4、“r” 只读 “w” 写入 encoding=‘UTF-8’格式,固定写法

💖5、as f 将前面一段起别名为f

💖6、datas = f.readlines() 一行行的读

💖7、for data in datas: 遍历刚才一行行读的数据

💖8、 txt = re.split(’: ', data) 酶促循环的数据以 :分开,注意我这是中文的冒号

注意:split()切完后就变成了列表了,可以通过索引取值,可以切多段,但每段之间都要以相同的符号构成。image.png💖9、insert(conn, name, count) 插入数据库,后面那个是两个属性 name count 就对应这数据库的两列





相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
3天前
|
关系型数据库 MySQL 数据库
ORM对mysql数据库中数据进行操作报错解决
ORM对mysql数据库中数据进行操作报错解决
24 2
|
3天前
|
数据处理 Python
数据变形记:Python转换技巧大公开,轻松玩转数据魔方!
在数据处理领域,数据变形是连接原始数据与洞察的桥梁。本文通过电商用户购买行为数据集的案例,展示了Python强大的数据处理能力。我们将购买日期转换为日期类型,计算每位用户的总花费,并对商品价格应用折扣,最终将杂乱的数据转化为有序、有价值的信息。通过Pandas库,我们实现了从简单类型转换到复杂数值计算的全过程,揭示了数据变形的无限可能。
13 1
|
2天前
|
JavaScript Java 关系型数据库
毕设项目&课程设计&毕设项目:基于springboot+vue实现的在线考试系统(含教程&源码&数据库数据)
本文介绍了一个基于Spring Boot和Vue.js实现的在线考试系统。随着在线教育的发展,在线考试系统的重要性日益凸显。该系统不仅能提高教学效率,减轻教师负担,还为学生提供了灵活便捷的考试方式。技术栈包括Spring Boot、Vue.js、Element-UI等,支持多种角色登录,具备考试管理、题库管理、成绩查询等功能。系统采用前后端分离架构,具备高性能和扩展性,未来可进一步优化并引入AI技术提升智能化水平。
毕设项目&课程设计&毕设项目:基于springboot+vue实现的在线考试系统(含教程&源码&数据库数据)
|
4天前
|
Java 关系型数据库 MySQL
毕设项目&课程设计&毕设项目:springboot+jsp实现的房屋租租赁系统(含教程&源码&数据库数据)
本文介绍了一款基于Spring Boot和JSP技术的房屋租赁系统,旨在通过自动化和信息化手段提升房屋管理效率,优化租户体验。系统采用JDK 1.8、Maven 3.6、MySQL 8.0、JSP、Layui和Spring Boot 2.0等技术栈,实现了高效的房源管理和便捷的租户服务。通过该系统,房东可以轻松管理房源,租户可以快速找到合适的住所,双方都能享受数字化带来的便利。未来,系统将持续优化升级,提供更多完善的服务。
毕设项目&课程设计&毕设项目:springboot+jsp实现的房屋租租赁系统(含教程&源码&数据库数据)
|
3天前
|
数据采集 存储 JavaScript
构建您的第一个Python网络爬虫:抓取、解析与存储数据
【9月更文挑战第24天】在数字时代,数据是新的金矿。本文将引导您使用Python编写一个简单的网络爬虫,从互联网上自动抓取信息。我们将介绍如何使用requests库获取网页内容,BeautifulSoup进行HTML解析,以及如何将数据存储到文件或数据库中。无论您是数据分析师、研究人员还是对编程感兴趣的新手,这篇文章都将为您提供一个实用的入门指南。拿起键盘,让我们开始挖掘互联网的宝藏吧!
|
3天前
|
关系型数据库 MySQL 数据库
Python MySQL查询返回字典类型数据的方法
通过使用 `mysql-connector-python`库并选择 `MySQLCursorDict`作为游标类型,您可以轻松地将MySQL查询结果以字典类型返回。这种方式提高了代码的可读性,使得数据操作更加直观和方便。上述步骤和示例代码展示了如何实现这一功能,希望对您的项目开发有所帮助。
18 4
|
1天前
|
Python
Python 中如何循环某一特定列的所有行数据
Python 中如何循环某一特定列的所有行数据
|
2天前
|
数据库 Python
python之操作数据库删除创建
python之操作数据库删除创建
|
4天前
|
数据可视化 数据挖掘 开发者
数据可视化新纪元!Python + Matplotlib + Seaborn,让你的数据故事生动起来!
在这个数据可视化的新纪元,让我们充分发挥 Python 的优势,用精彩的图表讲述数据背后的故事,为决策提供有力的支持,为交流带来清晰的视角。
20 4
|
2天前
|
数据采集 数据挖掘 数据处理
数据清洗,不只是清洁!Python教你如何挖掘数据中的隐藏价值!
在数据驱动的时代,数据被视为企业的核心资产。然而,这些宝贵的数据往往伴随着噪声、缺失值、异常值等问题,如同未经雕琢的璞玉,需要精心打磨才能展现出其内在的价值。数据清洗,这一看似简单的预处理过程,实则蕴含着挖掘数据深层价值的无限可能。今天,就让我们借助Python的力量,一同探索如何通过数据清洗来发现数据中的隐藏宝藏。
12 1