python3爬虫学习之数据存储MySQL基础

数据入库也是爬虫的基本操作,这里我们首先了解一下MySQL数据库的基本操作

首先请确保已经安装了MySQL数据库,在这里推荐一下Navicat,很好用,安装及破解很简单,百度一下你就知道。

请确保已经安装了pymysql

一:MySQL数据库连接

我已经建了一个pymysql_demo的数据库,并创建了student表,因为之前有过操作,所以把表清空了。

推荐大家用Navicat是因为它简单易操作,不用sql语句去建库建表

然后我们来连接数据库

import pymysql

#连接数据库
db = pymysql.connect(host = "localhost" , user = "root" , password = "123",
                     database="pymysql_demo",port=3306)
#获取游标
cursor = db.cursor()

下面的增删改查操作将基于此段代码

二:数据基本操作,增删改查

1,增

扫描二维码关注公众号,回复: 5840203 查看本文章

第一种方式:

#编写sql语句
sql = """
insert into student(num, name, age, class) value(2, "李四", 19, "软工17")
"""
cursor.execute(sql)
#提交执行,在插入和删除时必须有该语句
db.commit()
#关闭数据库
db.close()

这样,我们完成了第一条数据插入

第二种:

#当设置主键为递增时,将主键填为空,sql数据库会自动递增
sql = """
insert into student(num, name, age, class) value(null, "王五", 17, "电信18")
"""
cursor.execute(sql)
#提交执行,在插入和删除时必须有该语句
db.commit()
#关闭数据库
db.close()

这里需要注意一下,因为我的表不是新建的,所以这里递增包含以前的数据,而mysql的主键是唯一的,因此这里不是3

这样,我们完成了第二条插入

第三种:

# 自输入
sql = """
insert into student(num, name, age, class) value(null, %s, %s, %s)
"""
name = "赵六"
age = 17
cla = "计科17"
cursor.execute(sql,(name , age,cla))
db.commit()
#关闭数据库
db.close()

2,查

第一种,fetchone,查找一条:

sql = """
select * from student where num=2
"""
#执行sql语句
cursor.execute(sql)
#查找一条
result = cursor.fetchone()
print(result)

fetchone查找多条

sql = """
select * from student
"""
cursor.execute(sql)
while True:
    result = cursor.fetchone()
    if result:
        print(result)
    else:
        break

2,fetchall查找全部

sql = """
select * from student
"""
cursor.execute(sql)
results = cursor.fetchall()
for result in results:
    print(result)

3,fetchmany查找多条

sql = """
select * from student
"""
cursor.execute(sql)
results = cursor.fetchmany(2)
for result in results:
    print(result)

它会按顺序查找需要的条数

3,删

sql = """
delete from student where num=2
"""
cursor.execute(sql)
# 提交执行,在插入和删除时必须有该语句
db.commit()
#关闭数据库
db.close()

这样我们就删除了num为2的数据,也可以根据其他的信息来删除

4,改

sql = """
update student set name="王五" where num=7
"""
cursor.execute(sql)
# 提交执行,在插入和删除时必须有该语句
db.commit()
#关闭数据库
db.close()

这样,我们就把num为7的name改成了王五。

以上,就是MySQL数据库在pycharm上最基本的操作。

猜你喜欢

转载自blog.csdn.net/s_kangkang_A/article/details/89182128