数据库头歌-综合考查14_17

综合考查14-电商公司产品评论系统数据库

第1关:创建数据库 Product_DB在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

测评即可通过。

第2关:创建数据表

进入图形化界面,写入代码,选中运行之后测评

Use Product_DB;
-- 创建产品类别表
CREATE TABLE T_category (
    Category_id CHAR(5) NOT NULL PRIMARY KEY,
    Category VARCHAR(30),
    Register_date DATETIME
);
 
-- 创建产品表 
CREATE TABLE T_product (
    Product_id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    Category_id CHAR(5),
    Product_name VARCHAR(30),
    Price DECIMAL(8,2),
    Remark VARCHAR(50),
    Register_date DATETIME 
);
 
-- 创建产品评论表 
CREATE TABLE T_product_review (
    Review_id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    Product_id INT,
    Review VARCHAR(45),
    Register_date DATETIME 
);

第3关:修改表结构,以设置数据表间的关系及实现约束要求

-- 1. 为 T_product 添加级联外键约束 
ALTER TABLE T_product 
ADD CONSTRAINT Category_id 
FOREIGN KEY (Category_id)
REFERENCES T_category(Category_id)
ON DELETE CASCADE 
ON UPDATE CASCADE;
 
-- 2. 为 T_product_review 添加级联外键约束 
ALTER TABLE T_product_review 
ADD CONSTRAINT Product_id 
FOREIGN KEY (Product_id)
REFERENCES T_product(Product_id)
ON DELETE CASCADE 
ON UPDATE CASCADE;
 
-- 3. 为 T_category 添加 CHECK 约束 
ALTER TABLE T_category 
ADD CONSTRAINT t_category_chk_1 
CHECK (Category IN ('书籍', '服装', '通讯产品', '家电', '家具', '化妆品'));

第4关:备份数据库 Product_DB

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

等待成功,即可测评。

第5关:数据管理操作1

在代码文件先试试测评能不能过,如果不能再试试图形化界面运行(6-8关同理)

-- 向 T_category 表插入数据 
INSERT INTO T_category (Category_id, Category, Register_date) 
VALUES 
('T1003', '书籍', '2019-05-06 00:00:00'), 
('T1005', '服装', '2019-05-06 00:00:00'), 
('T1007', '通讯产品', '2019-05-06 00:00:00'), 
('T1009', '化妆品', '2019-05-06 00:00:00'); 
 
-- 向 T_product 表插入数据 
INSERT INTO T_product (Category_id, Product_name, Price, Remark, Register_date) 
VALUES 
('T1003', '解忧杂货店', 23.00, '东野圭吾小说', '2019-05-06 00:00:00'), 
('T1003', '数据库原理', 48.00, '高职高专教材', '2019-05-12 00:00:00'), 
('T1007', 'HUAWEI P30', 6999.00, '曲面屏手机', '2019-05-12 00:00:00'), 
('T1009', '兰蔻小黑瓶', 1000.00, '精华', '2019-05-06 00:00:00'); 
 
-- 向 T_product_review 表插入数据 
INSERT INTO T_product_review (Product_id, Review, Register_date) 
VALUES 
(1, '印刷精美清晰', '2019-05-18 00:00:00'), 
(4, '护肤效果明显', '2019-05-30 00:00:00'), 
(3, '像素高拍照效果佳', '2019-05-20 00:00:00'), 
(2, '适用于高职高专软件开发类相关专业', '2019-05-20 00:00:00');

第6关:数据管理操作2

USE Product_DB
######### Begin  #########

-- 从 T_product 表中查询满足价格条件的产品信息 
SELECT * 
FROM T_product 
WHERE Price > 20; 
######### End  #########

第7关:数据管理操作3

USE Product_DB
######### Begin  #########
-- 创建视图 vw_Product,查看评论录入日期在 2019 年 1 月到 6 月间的产品信息 
CREATE VIEW vw_Product AS 
SELECT 
    p.Product_id, 
    c.Category_id, 
    p.Product_name, 
    p.Price, 
    p.Remark, 
    r.Register_date 
FROM 
    T_product p 
JOIN 
    T_category c ON p.Category_id = c.Category_id 
JOIN 
    T_product_review r ON p.Product_id = r.Product_id 
WHERE 
    r.Register_date BETWEEN '2019-01-01' AND '2019-06-30'; 

######### End  #########

第8关:数据管理操作4

USE Product_DB
######### Begin  #########
-- 删除最早的三条评论记录 
DELETE FROM T_product_review 
ORDER BY Register_date ASC 
LIMIT 3; 
######### End  #########

综合考查17-音乐网站歌曲管理系统数据库

第1关:创建数据库 music_DB

进入图形化同综合考查14

create database music_DB;

第2关:创建数据表

进入图形化软件编写运行:

-- 使用 music_DB 数据库 
USE music_DB; 
 
-- 创建 tbl_menu 表 
CREATE TABLE tbl_Menu ( 
    menu_Id INT NOT NULL AUTO_INCREMENT, 
    menu_Name VARCHAR(40), 
    singer_ID INT, 
    music_Id INT, 
    PRIMARY KEY (menu_Id) 
);
-- 创建 tbl_music 表 
CREATE TABLE tbl_Music ( 
    music_Id INT NOT NULL AUTO_INCREMENT, 
    music_Name VARCHAR(40), 
    singer_ID INT, 
    music_Adress VARCHAR(80), 
    music_Img VARCHAR(80), 
    lyrics_Adress VARCHAR(80), 
    click_Number INT, 
    music_Type VARCHAR(40), 
    PRIMARY KEY (music_Id) 
);
-- 创建 tbl_Singer 表 
CREATE TABLE tbl_Singer ( 
    singer_ID INT NOT NULL AUTO_INCREMENT, 
    singer_Name VARCHAR(40), 
    singer_Sex VARCHAR(40), 
    singer_Head VARCHAR(40), 
    singer_Type VARCHAR(40), 
    singer_Profile VARCHAR(80), 
    singer_Portrait VARCHAR(80), 
    PRIMARY KEY (singer_ID) 
);

第3关:修改表结构,以设置数据表间的关系及实现约束要求

(如果不小心退出实验环境,需要重新写第二关的东西)

-- 1. 创建数据表间的关系,采用级联关系方式 
-- tbl_menu 与 tbl_music 的外键约束 
ALTER TABLE tbl_Menu 
ADD CONSTRAINT menu_music_musicid 
FOREIGN KEY (music_Id) REFERENCES tbl_Music(music_Id) 
ON DELETE CASCADE 
ON UPDATE CASCADE; 
 
-- tbl_menu 与 tbl_singer 的外键约束 
ALTER TABLE tbl_Menu 
ADD CONSTRAINT menu_singer_singerid 
FOREIGN KEY (singer_ID) REFERENCES tbl_Singer(singer_ID) 
ON DELETE CASCADE 
ON UPDATE CASCADE; 
 
-- tbl_music 与 tbl_singer 的外键约束 
ALTER TABLE tbl_Music 
ADD CONSTRAINT fk_music_singer 
FOREIGN KEY (singer_ID) REFERENCES tbl_Singer(singer_ID) 
ON DELETE CASCADE 
ON UPDATE CASCADE; 
 
-- 2. 歌手表 tbl_Singer 中的字段歌手性别(singer_Sex)只能为:男、女 
ALTER TABLE tbl_Singer 
ADD CONSTRAINT tbl_singer_chk_1 
CHECK (singer_Sex IN ('男', '女')); 
 
-- 3. 音乐表 tbl_Music 中的字段歌曲类型(music_Type)可以是:抒情、摇滚、饶舌、古典、轻音乐 5 种类型 
ALTER TABLE tbl_Music 
ADD CONSTRAINT tbl_music_chk_1 
CHECK (music_Type IN ('抒情', '摇滚', '饶舌', '古典', '轻音乐')); 

第4关:备份数据库 music_DB

操作同综合考查14

第5关:数据管理操作1

(直接复制到代码文件即可)

use music_DB
######### Begin  #########
insert into tbl_Singer values(1,'周深','男','C:\\H1.jpg','通俗歌手','声音特别','C:\\x1.jpg');
insert into tbl_Music values(1,'雪绒花',1,'http://music2/zs1.html','C:\\zs1.jpg','http://music2/word1.html',1234,'抒情');
insert into tbl_Menu values(1,'影视金曲',1,1);
######### End  #########

第6关:数据管理操作2

use music_DB
######### Begin  #########
select music_Name,click_Number from tbl_Music where click_Number>100;
######### End  #########

第7关:数据管理操作3

use music_DB
######### Begin  #########
-- 创建视图 vw_sing 
CREATE VIEW vw_sing AS 
SELECT 
    m.music_Name  , 
    s.singer_Name  , 
    me.menu_Name  , 
    m.click_Number,
    m.music_Type
FROM 
    tbl_Music m 
JOIN 
    tbl_Menu me ON m.music_Id  = me.music_Id  
JOIN 
    tbl_Singer s ON m.singer_ID  = s.singer_ID  
WHERE 
    m.music_Type  = '抒情'; 
######### End  #########

第8关:数据管理操作4

use music_DB
######### Begin  #########
-- 从 tbl_Music 表中删除男性歌手演唱的歌曲数据 
DELETE FROM tbl_Music tbl_Menu
WHERE singer_ID IN ( 
    -- 子查询:从 tbl_Singer 表中获取所有男性歌手的 singer_ID 
    SELECT singer_ID 
    FROM tbl_Singer 
    WHERE singer_Sex = '男' 
); 
DELETE FROM tbl_Menu
WHERE singer_ID IN ( 
    -- 子查询:从 tbl_Singer 表中获取所有男性歌手的 singer_ID 
    SELECT singer_ID 
    FROM tbl_Singer 
    WHERE singer_Sex = '男' 
); 
######### End  #########



评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值