0
点赞
收藏
分享

微信扫一扫

python爬虫-21-三分钟python读写mysql数据库

​MySQL​​​是最流行的关系型数据库管理系统,在​​WEB​​​应用方面​​MySQL​​​是最好的 ​​RDBMS​​​(​​Relational Database Management System​​​:关系数据库管理系统)应用软件之一。这篇文章将简单的来实现使用​​python​​​对​​mysql​​数据库进行增删改查操作。


python爬虫-21-三分钟python读写mysql数据库_mysql

1、mysql数据搭建

这里可以参考下之前的文章,如下:


往期推荐


​​centos7/linux编译安装mysql8最新版​​



2、python操作mysql的对应模块安装


​python​​​针对操作​​mysql​​​数据库提供了很多模块,我们这里使用​​pymysql​​​模块,来使​​python​​​能对​​mysql​​进行操作,所以我们需要先安装下这个模块,命令如下:

pip install pymysql -i https://pypi.tuna.tsinghua.edu.cn/simple

3、测试数据库信息

当我们根据第一步搭建完毕之后,例如我的数据库信息地址如下:

host="127.0.0.1",
user='yunweijia',
password='yunweijia@123!@#',
database='yunweijia',
port=3306

且有一个名字为​​ceshi​​的表,里面的信息如下:

python爬虫-21-三分钟python读写mysql数据库_sql_02

4、python连接mysql数据库

import pymysql

db = pymysql.connect(
host="127.0.0.1",
user='yunweijia',
password='yunweijia@123!@#',
database='yunweijia',
port=3306
) # 建立连接
cursor = db.cursor() # 游标
cursor.execute("select 1") # 执行sql
data = cursor.fetchone() # 获取结果
print(data) # 输出结果
db.close() # 关闭连接

运行结果如下:

(1,)

5、使用python在mysql数据库中新增数据

import pymysql

db = pymysql.connect(
host="127.0.0.1",
user='yunweijia',
password='yunweijia@123!@#',
database='yunweijia',
port=3306
) # 建立连接
cursor = db.cursor() # 游标
Sql = """INSERT INTO `yunweijia`.`ceshi`(`name`, `age`, `area`, `date`, `like`) VALUES ('赵六', 21, '北京', '1997-01-01 00:00:00', '学习');""" # 执行的sql命令
cursor.execute(Sql) # 执行sql
db.commit() # 提交执行的sql
db.close() # 关闭连接

运行完毕之后,无信息输出,这个时候我们可以再次打开表看下,是不是多了一条数据呢,如下图:

可以看到我们“赵六”的信息已经成功插入了。

python爬虫-21-三分钟python读写mysql数据库_运维工程_03

6、使用python在mysql数据库中查询数据

查询数据的时候有几种查询方式:

  • ​fetchone()​​:这个方法每次只获取一条数据;
  • ​fetchall()​​:这个方法接收全部的返回结果;
  • ​fetchmany(size)​​:可以获取指定条数的数据;

我们具体例子看下:

import pymysql

db = pymysql.connect(
host="127.0.0.1",
user='yunweijia',
password='yunweijia@123!@#',
database='yunweijia',
port=3306
) # 建立连接
cursor = db.cursor() # 游标
Sql = """SELECT * FROM ceshi;""" # 执行的sql
cursor.execute(Sql) # 执行sql
while True: # 判断是否为真
result = cursor.fetchone() # 每次获取一条数据
if not result: # 判断是否还有数据,没有就break该循环
break
print(result) # 打印数据
print('-'*10)
db.close() # 关闭连接

运行结果如下:

('张三', 18, '北京', datetime.datetime(2000, 1, 1, 0, 0), '吃饭')
----------
('李四', 19, '北京', datetime.datetime(1999, 1, 1, 0, 0), '睡觉')
----------
('王五', 20, '北京', datetime.datetime(1998, 1, 1, 0, 0), '打游戏')
----------
('赵六', 21, '北京', datetime.datetime(1997, 1, 1, 0, 0), '学习')
----------

其他的​​fetchall()​​​和​​fetchmany(size)​​参数使用方法类似,就不一一举例了。

7、使用python在mysql数据库中删除数据

剩余内容请转至VX公众号 “运维家” ,回复 “182” 查看。


------ “运维家” ,回复 “182”  ------

------ “运维家” ,回复 “182”  ------

------ “运维家” ,回复 “182”  ------


系统运维工程师,运维工程师技能要求,成都运维工程师驻场开发收费标准,t3网络运维工程师,运维工程师社会需求,运维工程师修炼手册;

oppo高级运维工程师社招,运维工程师员招聘要求,中级运维工程师技术水平,大数据运维工程师月薪多少,运维工程师的个人发展计划,应届生面试运维工程师穿着;

系统运维运维工程师,中国移动网络运维工程师笔试,徐州市苏宠集团运维工程师待遇,云南运维工程师培训班;

监控系统运维工程师,高铁运维工程师是正式工 吗,郑卅软件运维工程师招聘,运维助理工程师好不好。



举报

相关推荐

0 条评论