大数据挖掘—(七):读懂MySql数据库操作

数据库

通过上期的分享,我们了解了MySQL数据库的基本连接与新建,本期分享一下MySQL数据的基本增减删查的操作

新建数据库

打开MySQL Workbench,连接到我们的数据库,右击新建一个数据库

  • 数据库: 数据库是一些关联表的集合
  • 数据表: 表是数据的矩阵。在一个数据库中的表看起来像一个简单的电子表格类似Excel

数据库

数据库以数据表的形式来管理数据,你可以在一个数据库中建立多张表,来管理不同的数据类型,为了保存我们通过scrapy爬虫爬取的数据(参考往期scrapy爬虫系列教材scrapy爬虫),我们新建一个小说的表,里面保存需要保存的Items

数据库表

数据库操作

增加(insert)

#定义一个插入数据库函数,后期可以直接调用
def insert_data(cls,novelname,author,category,nameid,status,num,url):
#sql语句
 sql="INSERT INTO python (novelname,author,category,nameid,status,num,url)" \
 "VALUES('%s','%s','%s','%s','%s','%s','%s')"\
 %(novelname,author,category,nameid,status,num,url)
 try:
 cursor.execute(sql)#保存数据
 connect.commit()#断开数据库,避免资源占用
 print("保存ok")#提示数据保存成功
 except:
 print('保存 error')#提示数据保存失败

数据库的操作使用sql语句来执行,后期的数据插入,直接调用insert_data 函数

更新 update

#定义更改数据库函数
def update_data(cls,author,category,nameid,status,num,url,novelname):
 #sql语句
 sql="update python set author='%s',category='%s',nameid='%s',status='%s',num='%s',url='%s' where novelname ='%s'" % (author, category, nameid, status, num, url, novelname)
 try:
 cursor.execute(sql)#执行
 connect.commit()#释放资源
 print('更新 ok')
 except:
 print('error')

%S是占位符,当更新数据库时,有where函数作判断语句,更新数据库时,用where函数指定更新那一行的数据,以便数据指针能够正确找到更新位置

查询数据库 select

def select_all_data(cls,novelname):
 sql="(SELECT * FROM python WHERE novelname='%s')"%(novelname)
 try:
 cursor.execute(sql)
 # 获取所有符合的记录列表
 results = cursor.fetchone()
 # cursor.fetchall() 获取第一条数据
 return results
 except:
 print('error')

查询数据库,需要指定查询的条件,本例使用小说的名字作为条件,查询所有的数据,当然你也可以查询部分数据.

fetchone: 查询符合条件的所有数据

fetchall:查询符合条件的第一条数据

sql = "(SELECT author,category FROM python WHERE novelname='%s')"%(novelname) #只查询小说作者与小说类别

判断是否存在 exists

def select_name(cls,novelname):
 sql="SELECT EXISTS(SELECT 1 FROM python WHERE novelname='%s')"%(novelname)
 try:
 cursor.execute(sql)
 return cursor.fetchall()[0]#若存在返回 1 ,不存在返回0 
 except:
 print('error')

后期通过调用exists函数,判断数据是否存在,避免重复保存数据。

通过以上的介绍,我们了解到了MySQL的基本简单操作,还有很多MySQL的数据库操作,大家可以自行学习。在同一个项目中,建议大家使用函数的形式写sql语句,避免在使用时,重新写sql语句。

下期预告

我们的爬虫项目中间插入了MySQL数据库的基本操作,以便我们爬虫项目的基本保存,能够完整的建立一个爬虫项目,下期会结合前期的爬虫与MySQL数据库,继续完善我们的爬虫项目。

谢谢大家的观看点赞与转发,关于分享的文章,大家有任何问题,可以在评论区一起探讨学习!!!