MySQL Sakila 数据库简介与实践
Sakila 数据库
1.1 Sakila 数据库简介
Sakila 是一个虚构的 DVD 租赁商店,用于演示和教学目的,它由 MySQL 官方提供,作为学习和测试数据库的工具,Sakila 数据库包含了多个表,涵盖了客户信息、影片信息、租赁记录等数据。
1.2 Sakila 数据库结构
Sakila 数据库包含以下几个主要表:
actor:演员表,存储演员信息
category:类别表,存储影片类别信息
customer:客户表,存储客户信息
film:影片表,存储影片信息
film_actor:影片与演员关联表
film_category:影片与类别关联表
inventory:库存表,存储库存信息
language:语言表,存储语言信息
rental:租赁表,存储租赁记录
staff:员工表,存储员工信息
store:门店表,存储门店信息
Sakila 数据库基本操作
2.1 创建 Sakila 数据库
CREATE DATABASE sakila;
2.2 导入 Sakila 数据库数据
将 Sakila 数据库的数据文件(sakila-data.sql)导入到数据库中。
mysql -u root -p sakila < sakila-data.sql
2.3 查询 Sakila 数据库数据
2.3.1 查询所有演员信息
SELECT * FROM actor;
2.3.2 查询特定类别的影片
SELECT film.title, category.name FROM film JOIN film_category ON film.film_id = film_category.film_id JOIN category ON film_category.category_id = category.category_id WHERE category.name = 'Action';
Sakila 数据库高级操作
3.1 插入数据
3.1.1 向 actor 表中插入一条新记录
INSERT INTO actor (first_name, last_name, last_update) VALUES ('Tom', 'Hanks', NOW());
3.2 更新数据
3.2.1 更新 actor 表中某条记录的信息
UPDATE actor SET first_name = 'Thomas', last_name = 'Hanks' WHERE actor_id = 1;
3.3 删除数据
3.3.1 删除 actor 表中某条记录
DELETE FROM actor WHERE actor_id = 1;
相关问题与解答
4.1 如何查询某个客户的所有租赁记录?
可以通过以下 SQL 语句查询某个客户的所有租赁记录:
SELECT rental.rental_id, rental.rental_date, film.title FROM rental JOIN customer ON rental.customer_id = customer.customer_id JOIN inventory ON rental.inventory_id = inventory.inventory_id JOIN film ON inventory.film_id = film.film_id WHERE customer.customer_id = 1;
4.2 如何查询某个门店的所有员工信息?
可以通过以下 SQL 语句查询某个门店的所有员工信息:
SELECT staff.staff_id, staff.first_name, staff.last_name, store.store_id, store.address FROM staff JOIN store ON staff.store_id = store.store_id WHERE store.store_id = 1;
各位小伙伴们,我刚刚为大家分享了有关“mysql sakila数据库_Mysql数据库”的知识,希望对你们有所帮助。如果您还有其他相关问题需要解决,欢迎随时提出哦!