news 2026/5/1 8:06:47

MySQL数据库练习 和 导入sakila数据库

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
MySQL数据库练习 和 导入sakila数据库

mysql数据库的相关练习:

首先,我们需要创建创建练习所需要的database以及database中的各种表。

如下图,我们在MySQL中创建一个TEST database,然后再进入TEST中,创建四个表:

将四个表创建好之后,我们需要在表中插入适当数据,操作如下所示:

其中,第一次插入数据时,我们系统出现了报错,这个错误是MySQL的字符集编码不支持中文导致的,具体是数据库/表/字段的字符集不是UTF8(或UTF8mb4),无法存储中文字符,进而触发 ERROR 1366 报错。
具体原因是MySQL默认的字符集可能是 latin1 (不支持中文),而你插入了“赵雷”等中文字符,系统无法识别对应的编码值,因此抛出错误。
解决步骤是:
1. 先修改数据库字符集:
进入MySQL终端,执行命令将数据库 TEST 的字符集改为 utf8mb4 (兼容所有中文和特殊字符)。

ALTER DATABASE TEST CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

2. 修改表的字符集

对 STUDENT 表执行字符集修改。

ALTER TABLE STUDENT CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

3. 重新执行插入语句:

修改完成后,再执行插入中文的SQL语句,即可正常存储。

然后我们继续插入数据:

这个报错和之前的问题完全一致,都是** COURSE 表的字符集不支持中文**导致的 ERROR 1366 ,只需把 COURSE 表的字符集也修改为 utf8mb4 就能解决。

操作如下:

同理,将剩余两个表也改变,操作如下:

ALTER TABLE TEACHER CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

ALTER TABLE SCORE CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

接下来我们来用该数据库中建立的表来进行相关练习。

练习题目如下:

练习具体操作过程已经结果如下:

第十题的SQL报错是字段 s_id 存在二义性,简单说就是MySQL分不清 NOT IN 子查询里的 s_id 是来自主查询的 STUDENT 表,还是子查询的 SCORE 表,同时你的语句还存在连接条件书写错误( a.s_id=a.s_id 是无效条件)。

具体错误点:

1. 字段二义性:子查询 SELECT s_id FROM SCORE WHERE c_id='02' 中的 s_id ,MySQL无法确定其归属表(虽然实际是 SCORE 表,但语法上需明确)。

2. 连接条件错误: s.s_id=a.s_id 写成了 a.s_id=a.s_id ,属于无效的自等条件,无法正确关联学生和成绩表。

修正后的第十题SQL语句如下:

继续练习:

其中第十九、二十题都是用子查询+变量的方法来实现各科成绩排名。

继续:

五十道练习已经全部完成。

接下来我们来做导入sakila的操作:

首先,将需要的zip文件下载并且保存到自己熟悉的电脑位置中,然后打开虚拟机,将文件直接拖入虚拟机文件中即可。(如果拖入不可以,可以用主机与虚拟机的共享文件夹,或者用xshell 8、xftp 8等软件进行共享传递文件。)

然后需要查看是否成功:

我直接将下载好的zip文件拖入我的根目录下:

进入文件夹,如图所示,在进入sakila-db文件中,出现了三个文件,分别是sakila-data.sql、sakila.mvb、sakila-schema.sql,这说明成功。

然后停留在sakila-db文件的目录下,来执行操作,用来创建数据库并且初始化数据。

创建成功后,退出该目录回到根目录,并且进入MySQL中执行以下操作,我们来进行验证:

如上图所示,操作均正常运行没有报错,说明我们已经成功导入sakila数据库。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/10 9:09:33

HuggingFace镜像网站加速加载:结合PyTorch-CUDA环境优化体验

HuggingFace镜像网站加速加载:结合PyTorch-CUDA环境优化体验 在深度学习项目开发中,你是否经历过这样的场景:满怀期待地运行一段代码,结果卡在模型下载环节——进度条一动不动,日志里反复提示“Read timeout”&#x…

作者头像 李华
网站建设 2026/5/1 6:17:12

全面讲解LED显示屏远程异步控制技术

从“换U盘”到“云端指挥”:深度拆解LED显示屏远程异步控制的底层逻辑你有没有见过这样的场景?凌晨三点,一位运维人员开着车,穿梭在城市高架桥下,只为给一块故障的户外广告屏重新插上U盘更新内容;又或者&am…

作者头像 李华
网站建设 2026/5/1 5:07:37

快速理解HBuilderX在Windows上的安装全过程

手把手带你装好 HBuilderX:Windows 开发环境从零搭建实战 你是不是也遇到过这种情况——刚决定学前端、做小程序,一上来就被“选什么编辑器”卡住?下载了一堆工具,配置半天还跑不起来项目。别急,今天我们就来解决这个…

作者头像 李华
网站建设 2026/4/29 17:30:51

PyTorch-CUDA-v2.6镜像如何提升大模型Token生成效率

PyTorch-CUDA-v2.6 镜像如何提升大模型 Token 生成效率 在当前大语言模型(LLMs)快速迭代的背景下,一个看似简单的任务——“生成下一个词”——背后却隐藏着巨大的计算挑战。以 LLaMA-3 或 Qwen 等千亿参数级模型为例,每输出一个 …

作者头像 李华
网站建设 2026/4/30 16:49:56

基于PyTorch-v2.6的CUDA加速环境,让模型训练更快更稳定

基于PyTorch-v2.6的CUDA加速环境,让模型训练更快更稳定 在深度学习项目中,最让人头疼的往往不是写不出模型,而是环境装不上、GPU用不了、多卡跑不动。明明代码逻辑清晰、数据准备充分,却卡在一个ImportError: libcudart.so.12 not…

作者头像 李华
网站建设 2026/5/1 7:13:29

UPlog小红书助手是什么?

在当今内容为王的社交媒体环境中,小红书已成为众多创作者和品牌营销的重要阵地。然而,随着平台内容生态日益专业化,创作者面临着排版耗时、灵感枯竭、多平台迁移困难等痛点。据统计,超过70%的创作者每月因排版和合规问题损失至少5…

作者头像 李华