MySQL world 示例数据库
world 示例数据库是 MySQL 中预装的一个数据库,它提供了一套结构化的数据,专门用于练习和学习。它模拟了关于国家、城市和国家语言的数据,是理解关系型数据库概念和练习 SQL 查询的绝佳资源,让你无需从头开始手动创建数据。这个数据库是许多 MySQL 教程和示例的通用基础,让你能将注意力集中在 SQL 语言本身,而不是数据的录入上。
1. 理解 world 数据库的模式 (Schema)
world 数据库由三个表组成:City(城市)、Country(国家)和 CountryLanguage(国家语言)。每个表都存储特定的信息,并通过共同的列(即外键,我们将在后面的模块中详细探讨)相互关联。目前,只需了解每个表的基本结构和用途即可。
1.1 Country(国家)表
Country 表保存了世界各个国家的信息。它包含的细节诸如国家代码、名称、大洲、地区、表面积、独立年份、人口、预期寿命、政府形式、国家元首以及首都城市的 ID。这个表是国家特定数据的核心。
Country 表中的列示例:
| 列名 (Column Name) | 数据类型 (Data Type) | 描述 (Description) |
|---|---|---|
Code | CHAR(3) | 唯一的三字母国家代码(主键 Primary Key) |
Name | CHAR(52) | 国家的全球全称 |
Continent | ENUM(...) | 国家所在的大洲 |
Region | CHAR(26) | 国家的地理区域 |
SurfaceArea | DECIMAL(10,2) | 总表面积(平方公里) |
IndepYear | SMALLINT | 独立年份 |
Population | INT | 总人口 |
LifeExpectancy | DECIMAL(3,1) | 平均预期寿命 |
GNP | DECIMAL(10,2) | 国民生产总值 |
GovernmentForm | CHAR(45) | 政府形式 |
HeadOfState | CHAR(60) | 国家元首姓名 |
Capital | INT | 首都城市的 ID(指向 City 表的外键) |
1.2 City(城市)表
City 表存储有关城市的信息。每条城市记录都包含一个 ID、名称、国家代码、所在地区(如省/州)以及人口。这个表通过 CountryCode 列与 Country 表链接起来。
City 表中的列示例:
| 列名 (Column Name) | 数据类型 (Data Type) | 描述 (Description) |
|---|---|---|
ID | INT | 城市的唯一标识符(主键 Primary Key) |
Name | CHAR(35) | 城市名称 |
CountryCode | CHAR(3) | 三字母国家代码(指向 Country 表的外键) |
District | CHAR(20) | 城市所属的地区或省份 |
Population | INT | 城市总人口 |
1.3 CountryLanguage(国家语言)表
CountryLanguage 表存储了每个国家所使用语言的信息。它将国家与语言链接起来,并且还包含一个 IsOfficial 标志(指示该语言是否为官方语言)和一个 Percentage 列(代表该国人口中讲该语言的百分比)。
CountryLanguage 表中的列示例:
| 列名 (Column Name) | 数据类型 (Data Type) | 描述 (Description) |
|---|---|---|
CountryCode | CHAR(3) | 三字母国家代码(指向 Country 表的外键) |
Language | CHAR(30) | 语言名称 |
IsOfficial | ENUM('T','F') | 如果是官方语言则为 'T',否则为 'F' |
Percentage | DECIMAL(4,1) | 讲该语言的人口百分比 |
2. 在 MySQL Workbench 中访问 world 数据库
一旦你使用 Workbench 连接到了你的 MySQL 服务器(如前一章所述),你就可以访问 world 数据库了。它应该会出现在 Workbench 界面左侧的 SCHEMAS 面板中。
- 找到
world模式 (Schema): 在 SCHEMAS 面板中,你会看到可用数据库(模式)的列表。world 数据库应该就列在其中。 - 展开
world模式: 点击world旁边的小箭头将其展开。你会看到 Tables(表)、Views(视图)、Stored Procedures(存储过程)和 Functions(函数)等子文件夹。 - 探索 Tables(表): 展开
Tables文件夹。你会找到city、country和countrylanguage。点击这些表名中的任何一个,它的列结构和其他属性就会显示在下方的 Object Info(对象信息)面板中。
3. 实战演示
为了演示,我们将执行一个基础查询来查看 Country 表的前几行数据。这是对 SELECT 语句的一个预览,我们将在未来的模块中详细讲解 SELECT。这里的目标仅仅是观察一下数据长什么样。
USE world; -- 这个命令告诉 MySQL 你想操作哪个数据库。
-- 每个会话或切换数据库时只需运行一次。
SELECT * -- '*' 的意思是“选择所有列”。
FROM Country -- 指定你想从中检索数据的表。
LIMIT 5; -- 将输出结果限制为前 5 行。
-- 这对于快速预览大型表非常有用。当你在 MySQL Workbench 中执行这个查询时(将它输入到 SQL 编辑器中,然后点击闪电图标或按下 Ctrl+Shift+Enter),你会看到 Country 表中前五行的数据。这证实了你已成功访问 world 数据库,并允许你直观地检查其内容。