6.8 数据存储——MySQL快速入门(下载网址及安装过程、基本操作)

本文介绍了如何通过WampServer简易安装MySQL,涵盖了数据库创建、phpMyAdmin管理、数据表构造、基本操作和SQL语句的学习,为Python数据库操作打下基础。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  • 前面学习了如何将爬取的数据存储到文本文件、CSV文件或Excel工作簿中,但是当数据量非常大时,在这类软件中查找和管理数据会很不方便,因此,我们需要一个专门用于存取和管理数据的软件——数据库。数据库的存储量很大,在商业实战中应用很多,本节会详细讲解MySQL数据库的基础知识,为学习用Python操作数据库做好准备。

6.8.1 MySQL的安装

  • MySQL 是最常用的数据库之一。MySQL 是用二维表格来组织数据,其结构和Excel工作表非常相似,也可以把它理解为一个位于云端的大型Excel。
  • 首先来讲解MySQL 的安装。这里介绍一个比较简单和快捷的安装方法——WampServer安装法。WampServer是一款整合了Apache(一种编程语言)解释器及MySQL 的软件包。它会自动设置好环境变量,不需要像传统的数据库安装方法any进行较为复杂的环境变量配置。

注意: WampServer只支持Windows。对于Linux或MacOS,可以安装XAMPP,详见文本的“补充知识点”。

  • 在浏览器中用搜索引擎搜索“WampServer官方下载”,进入网址https://sourceforge.net/projects/wampserver/,单击“Download”按钮,既可下载WampServer安装包。
    在这里插入图片描述
  • 此外,也可打开WampServer官网的英文版(https://www.wampserver.com/en/)

具体安装过程详见:

  • 如果操作系统版本较旧,可能会因缺少插件导致WampServer安装失败,此时需要先安装插件,在重新安装WampServer。

注意:在安装插件之前,需要卸载安装失败的WampServer,否则安装完插件也不会生效。

  • 安装插件可参考本书《零基础学Python网络爬虫 案例实战全流程详解(入门与提高篇)》249页。
  • WampServer 运行失败的常见解决办法,参见本书251页。

6.8.2 MySQL的基本操作

  • 安装好WampServer后,就可以开始学习MySQL了。本书将介绍MySQL管理平台phpMyAdmin,然后介绍数据库和数据表的创建方法以及数据表的基本操作,最后简单介绍数据表的管理功能。

1.MySQL管理平台phpMyAdmin介绍

  • phpMyAdmin 是一款在线数据库管理平台,可以在浏览器中直接管理MySQL。用上一节介绍的方法打开phpMyAdmin的登录页面,输入用户名和密码并登录之后,进入如下图所示的界面。
    在这里插入图片描述

  • 页面顶部显示的是MySQL的端口,这里默认端口3306。如果之前修改过端口,那么这里显示的是修改之后的端口,例如,之前将端口改成3308,这里就会显示3308。

  • 在页面左侧可以看到一些默认的数据库。数据库好比是大型的Excel工作簿,数据表则是Excel工作簿中的工作表,而phpMyAdmin就像一个在线存储各个Excel工作簿的文件夹。

2.创建数据库和数据表

  • 创建数据表之前先得创建数据库。(1)在phpMyAdmin 页面左侧上方单击“新建”链接,在右侧会显示新建数据库页面,(2)输入数据库名称,如“pachong”,(3)然后选择排序规则,所谓排序规则其实就是编码格式,一般选择支持中文的“utf8_general_ci”,(4)最后单击“创建”按钮,如下图所示,即可创建数据库。
    在这里插入图片描述

  • 如下图所示,(1)此时页面左侧或新增一个名为“pachong”的数据库,(2)并在右侧提示需要在该数据库中新建一个数据表,(3)输入数据表名称,如“test”,(4)然后设置字段数,即数据表的列数,这里保留默认值4不变,之后可以再根据需求修改,(5)最后单击“执行”按钮,即可创建数据表。
    在这里插入图片描述

  • 随后进入数据表的结构设置页面。(1)如果要添加新字段,可在上方的“添加”文本框中输入数量,(2)再单击“执行”按钮,(3)然后在下方输入各个字段的“名字”“类型”“长度/值”等,(3)最后单击“保存”按钮,如下图所示。
    在这里插入图片描述
    在这里插入图片描述

  • 前面创建的数据表保留默认的4列没有改,而实际上需要有5列,所以在“添加”文本框中输入“1”,再单击“执行”按钮,添加新的1列。(之前遗漏的href列)。

  • 接着来定义各个列(字段)。必填的内容有“名字”“长度/值”,否则无法创建数据表。“名字”就是列名;“类型”就是数据的类型,字符串类型的数据选择VARCHR选项(也可以选择TEXT长超文本类型,区别不大),整数类型的数据选择INT选项,这两种数据类型用的较多;“长度/值”是列中存储数据的最大长度,它并不会占用数据空间,所以一般都设为1024,只要字符串不是太长,基本都够用,但最好也别设太大,否则可能会影响数据存储速度。

  • 这里分别输入每一列的“名字”为company(公司名称)、title(新闻标题)、href(新闻网址)、date(新闻日期)、source(新闻来源),“类型”都选择VARCHAR(字符串类型),“长度/值”都输入1024,最后单击页面有下脚的“保存”。

  • 除了“名字”“类型”“长度/值”这3项必填内容,这里简单介绍一下其他非必填内容:“默认”选项是指这一列的默认内容,可以为空值或其他内容;“排序规则”选项就是数据编码格式,如果之前没有设置,那么这里每一列的“排序规则”都得单独设置,否则默认设置为不支持中文的latin1编码格式。

3. 数据表格的基本操作

  • 创建完数据表并单击“保存”按钮后,会跳转到如下面所示的页面。
    在这里插入图片描述

  • 其中最常用的5个功能是“浏览”“结构”“SQL”“插入”“搜索”。

(1)结构
  • “结构”功能主要用于查看和修改数据表的基本结构。如果要添加新的一列,或者发现设定的字符串长度不够,都可以在这里修改。
(2)插入
  • 单击“插入”按钮,会默认插入两行数据。在最右边的“值”列中输入要插入的数据内容。例如,输入两组数据,一组是阿里巴巴的新闻,一组是百度的新闻,然后单击“执行”按钮,如下图所示。
    在这里插入图片描述
  • 随后会跳转到如下图所示的“SQL”界面,并显示数据插入成功的提示消息。其中显示的是SQL语句就是把刚才数据的操作以代码的方式呈现出来,因此,如果单击右下角的“执行”按钮,就会执行SQL语句,把刚才插入的数据再插入一遍。
    在这里插入图片描述
    (3)浏览
  • 插入数据后,单击“浏览”按钮,即可浏览数据表中的数据内容,如下图所示。此功能用得比较少,更多的时候是用“搜索”功能来查找需要的数据内容。
    在这里插入图片描述
    (4)搜索
  • “搜索”功能是比较常用的,可以通过它来寻找并查看所需内容。例如,可以在下图所示的“搜索”页面中搜索company(公司名称)为“阿里巴巴”的内容。
    在这里插入图片描述
  • 单击“执行”按钮便能搜索到公司名称为“阿里巴巴”的数据内容,如下图所示。用类似的手段还可以搜索标题、日期或来源的内容。
    在这里插入图片描述
(3)浏览
  • 插入数据后,单击“浏览”按钮,即可浏览数据表的数据内容,如下图所示。此功能用得比较少,更多的时候是用“搜索”功能来查找需要的数据内容。
    在这里插入图片描述
(4)搜索
  • “搜索”功能是比较常用的,可以通过它来寻找并查看所需内容。例如,可以在下图所示的“搜索”页面中搜索company(公司名称)为“阿里巴巴”的内容。
    在这里插入图片描述
  • 单击“执行”按钮便能搜索到公司名称为“阿里巴巴”的数据内容,如下图所示。用类似的手段还可以搜索标题、日期和来源的内容。
    在这里插入图片描述
(5)SQL
  • SQL 语句是Python和数据库进行交互的桥梁,与之前的内容相比较稍微有点难,但是通过phpMyAdmin的“SQL”功能学起来会轻松一些。所谓SQL语句就是以代码的方式对数据进行增、删、改、查等操作。
  • 单击“SQL”按钮,可以看到如下图所示的界面,代码输入框下方的按钮分别对应数据的查(SELECT*、SELECT)、增(INSERT)、改(UPDATE)、删(DELETE)。在右侧的“字段”列表框中双击字段,即可在左侧的代码输入框里快速插入对应的的字段名。
    在这里插入图片描述
  • 首先来讲“查”。前面介绍的“搜索”功能就属于“查”,对应的SQL语句为:
SELECT * FROM `数据表名` WHERE 字段 LIKE '内容'
  • "SELECT * FROM 数据表名"是指选择该数据表里的所有“WHERE 字段 LIKE ‘内容’”则是指对指定字段按条件进行筛选。例如,前面在数据表“test”中搜索company(公司名称)为“阿里巴巴”对应的SQL语句就是:
SELECT * FROM `test` WHERE `company` LIKE '阿里巴巴'
  • 上述SQL语句实现的是100%精确查找,其中的LIKE也可以换成“=”号。LIKE还能实现模糊查找,不过需要在查找内容前后加上“%”。例如,“LIKE ‘阿里%’”表示查找以“阿里”两个字开头的内容,“LIKE ‘%巴巴’”表示查找以“巴巴”两个字结尾的内容,“LIKE ‘%里巴%’”则表示查找包含“里巴”两个字的内容。
  • 如下图所示,(1)表示“SQL”功能区单击“SELECT*”按钮,(2)会在代码输入框自动生成SQL语句,和上面的语句类似,不过“WHERE”后是“1”(即True)。如果此时单击“执行”按钮,它会不经过筛选直接把表里的内容都显示。把“1”删除,在“字段”列表框中双击“company”字段,即可在“WHERE”后插入“company”,继续输入一个空格,接着输入“LIKE ‘阿里巴巴’”,就得到了和前面一样的SQL语句,最后单击“执行”按钮,就可以查找数据表所有公司成为“阿里巴巴”的记录了。
    在这里插入图片描述
    在这里插入图片描述
SELECT `company`, `title`, `href` FROM `test` WHERE `company` LIKE '阿里巴巴'
  • 执行结果如下图所示。
    在这里插入图片描述
  • 如果有多个查找条件,可以在SELECT*用“AND” 来连接,如下图所示:
SELECT * FROM `test` WHERE `title` LIKE '标题1' AND `href` = '链接1'
  • 指定结果如下图所示,即同时筛选标题和链接。
    在这里插入图片描述
  • 其次讲“增”。如果想插入一条含有5个值的数据记录,对应的SQL语句为:
INSERT INTO `数据表明`(`字段1`, `字段2`, `字段3`, `字段4`, `字段5`) VALUES ('值1','值2','值3','值4','值5')
  • 其中“INSERT”就是插入的意思,通过“VALUES” 连接想要的值。
  • 例如,在数据表中“test”中插入“company”为“阿里巴巴”、“title”为“标题2”、“href”为“链接2”、“date”为“日期2”、“source”为“来源2”的一条数据记录,对应的SQL语句为:
INSERT INTO `test`(`company`, `title`, `href`, `date`, `source`) VALUES ('阿里巴巴','标题2','链接2','日期2','来源2')
  • 如果要插入多条记录,在上述语句汇后加一个逗号,再加一个括号包围要插入的值,如下所示:
INSERT INTO `test`(`company`, `title`, `href`, `date`, `source`) VALUES ('阿里巴巴','标题2','链接2','日期2','来源2'),('华能信托','标题1','链接1','日期1','来源1')
  • 最后将“删”(“改”在爬虫任务中用的较少,这里不做讲解)。“删”的SQL语句为:
DELETE FROM `test` WHERE `字段` = '内容'
  • 例如,要删除数据表“test”中所有“company”为“百度”的数据记录,SQL语句为:
DELETE FROM `test` WHERE `company` = '百度'
  • “删”和“查”的SQL语句比较相似,知识把“SELECT*”换成了“DELETE”。将常用的SQL语句总结一下,下一节讲解Python与数据库的交互时会用到。
# 查
SELECT * FROM `数据表名` WHERE 字段 LIKE '内容'
# 增
INSERT INTO `test`(`company`, `title`, `href`, `date`, `source`) VALUES ('阿里巴巴','标题2','链接2','日期2','来源2')
# 删
DELETE FROM `test` WHERE `字段` = '内容'

4. 数据表的管理功能

  • 数据表的管理有“导入”“导出”“权限”“操作”,如下图所示。这些功能不太常用,这里只做简单介绍。
    在这里插入图片描述
    “导入”就是从本地导入数据表,“导出”则是把数据导出到本地,它们都支持多种格式的文件。“权限”用于设置他人访问数据库的权限。“操作”用于更改数据库中数据表的排序,将其他数据库中的数据表移动或复制到当前数据库,以及重命名当前数据库,以及重命名数据表、清空数据表等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值