课程教材:

        《Python数据分析与应用》

编程平台:

        Jupyter Notebook

问题描述:

        在按照教材P81代码4-1进行实验时,频频出现报错,于是本着学习理解的心态,在查阅资料解决所有问题后,特记录一下处理过程,希望能帮助到和我一样有困惑的小白朋友们。

(注:教材上的内容将不再赘述,由于本次实验在学校机房中完成,不会提及相关环境的配置)

1、键入教材P81代码4-1的内容并运行,报错:No module named 'pymysql'

        问题分析:没有安装pymysql模块

        解决方案:用管理员身份运行cmd,输入“conda install pymysq”并回车,等待安装结束。输出结果如下:

         (注:这一步需要敲一个“y”并回车以继续)

         安装结束后,重启内核并再次运行,可见没有发生报错:

2、继续键入教材P82代码4-2的部分内容并运行,报错如下:

        问题分析:未安装或者未打开MySQL服务(机房电脑上已安装MySQL,只是没有默认启动服务,因此需要手动打开)

        解决方案:打开“服务” --> 找到“MySQL” --> 右键菜单点击“启动”,此时已手动打开MySQL服务:

3、再次运行,又发生报错,但与上一步不同,报错如下:

        问题分析:访问被拒绝,检查MySQL连接的用户名、密码、地址是否正确。

        解决方案:检查并修改“create_engine”中相应的内容(由于机房电脑root用户密码为空,因此删去了原语句中的“1234”),即:

        engine = create_engine("mysql+pymysql://root:1234@localhost:3306/testdb?charset=utf8")

4、再次运行又发生报错,且又与上一步不同,报错如下: 

         问题分析:没有名为“testdb”的数据库,需要手动在MySQL中创建一个。

        解决方案:在cmd中输入“mysql -u root -p”并回车,输入密码并回车,即可进入MySQL。再输入“show databases;”并回车,即可显示所有的数据库:

 

        ① 打开MySQL Workbench,可以看到已存在一个MySQL连接(如没有则需创建一个,点击号即可),双击进入:

        ② 点击工具栏第四个图标,创建一个新的数据库:

        ③ 根据实验要求,输入数据库名称:testdb、编码:utf-8,然后点击“Apply”:

        ④ 一路确定即可,最后点击“Finish”,完成数据库的创建。

 

        ⑤ 导入sql文件,这里是实验所提供的一些文件:

 

        ⑥ 在MySQL Workbench中,点击“File”-->“Open SQL Script...”:

 

        ⑦ 选择一个sql文件,点击“打开”:

        ⑧ 点击第三个小图标⚡,等待查询结束:

         重复⑧-⑨步骤,将剩下的sql文件导入并进行查询。

 

        ⑩ 再次运行,没有发生报错,且返回的内容与教材上一致:

         继续键入教材P82代码4-2剩下的内容,再次运行,返回的内容与教材上一致:

 

至此,问题已全部解决。

总的来说,就是要确保MySQL的安装及启动服务、代码内容与MySQL连接的配置一致、相应数据库中存在所需内容。

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐