域名 AXUM.RS 将于2025年10月到期。我们无意再对其进行续费,我们希望你能够接续这个域名,让更多 AXUM 开发者继续受益。
  • 方案1️⃣AXUM.RS 域名 = 3000
  • 方案2️⃣方案1️⃣ + 本站所有专题原始 Markdown 文档 = 5000
  • 方案3️⃣方案2️⃣ + 本站原始数据库 = 5500
如果你有意接续这份 AXUM 情怀,请与我们取得联系。
说明:
  1. 如果有人购买 AXUM.RS 域名(方案1️⃣),或者该域名到期,本站将启用新的免费域名继续提供服务。
  2. 如果有人购买了 AXUM.RS 域名,且同时购买了内容和/或数据库(方案2️⃣/方案3️⃣),本站将关闭。届时我们或许会以另一种方式与你再相遇。

示例数据库

本章将介绍示例数据库,以便后续的演示。同时,你将学习到如何将已存在的数据导入到 PostgreSQL 中。

下载并导入示例数据库

下载示例数据库:

wget https://file.axum.rs/subjects/postgresql-basic/dvdrental.tar

请确保你已经安装了 PostgreSQL:

docker run --name axum_rs_postgres -e POSTGRES_PASSWORD=axum_rs -p 5432:5432 -d postgres

连接服务器:

docker exec -it axum_rs_postgres psql -U postgres

创建示例数据库:

CREATE DATABASE dvdrental;

退出:

\q

创建示例数据库

复制示例数据库到 docker 容器:

docker cp ~/Downloads/dvdrental.tar axum_rs_postgres:/root/dvdrental.tar

进入容器:

导入数据:

pg_restore -U postgres -d dvdrental /root/dvdrental.tar
exit
# 直接由 docker exec 进入
docker exec -it axum_rs_postgres psql -U postgres -d dvdrental

# 在容器内进入
psql -U postgres -d dvdrental

示例数据库简介

示例数据库是一个模拟 DVD 租赁业务的数据库,它有:

  • 15张表
  • 1个触发器
  • 7个视图
  • 8个函数
  • 1个域
  • 13个序列

下面简要介绍15张表:

表名说明
actor存储演员数据,包括姓、名等
film存储电影数据,包括标题、发行年份、片长、评级等。
film_actor存储电影和演员之间的关系
category存储电影的分类
film_category存储电影和分类的关系
store存储门店数据,包括经理、地址等
inventory存储库存数据
rental存储租赁数据
payment存储客户的付款数据
staff存储员工数据
customer存储客户数据
address存储员工和客户地址
city存储城市
country存储国家/地区名称

示例数据库模型图

要查看完整内容,请先登录