实验2:MySQL关系型数据库操作
1. 考核目的
考核学生对关系型数据库支撑“网上商城”功能的理解,以及在MySQL中创建表、视图、索引,通过SELECT、INSERT、DELETE、UPDATE等语句进行关系数据库操作的能力。
2. 考核内容
【实验2-1】在MySQL中创建“网上商城”的四个数据库:用户数据库(mcuserdb)、商品数据库(mcproductdb)、订单数据库(mcorderdb)和管理数据库(mcadmindb),将数据库的字符集设为GBK。
【实验2-2】选择用户数据库(mcuserdb),创建用户信息表user_information(文字教材中表4-6)、用户收货地址表user_address(文字教材中表4-7)、用户购物车表order_cart(文字教材中表4-8),数据引擎选择InnoDB。
选择商品数据库(mcproductdb),创建商品信息表product_info(文字教材中表4-9)、商品分类信息表product_category(文字教材中表4-10),数据引擎选择InnoDB。
选择订单数据库(mcorderdb),创建订单主表order_master(文字教材中表4-11)、订单详细信息表order_detail(文字教材中表4-12),数据引擎选择InnoDB。
选择管理数据库(mcadmindb),创建管理员表user_admin(文字教材中表4-1)、权限表power(文字教材中表4-2)、管理-权限表admin_power(文字教材中表4-3)、首页模块表models(文字教材中表4-4)、模块内容表model_comment(文字教材中表4-5),数据引擎选择InnoDB。
【实验2-3】选择商品数据库(mcproductdb),在商品信息表product_info上按照商品名称创建索引。
【实验2-4】选择订单数据库(mcorderdb),创建如下视图:
CREATE VIEW View_Order_detail
(order_detail_id,product_id,order_id,product_price,product_cnt,t_price) AS
SELECT order_detail_id,product_id,order_id,product_price,product_cnt,product_price*product_cnt
FROM order_detail;
【实验2-5】使用SHOW、DESCRIBE语句查看所建的表和视图。
【实验2-6】使用SELECT语句查询创建好的视图View_Order_detail。
【实验2-7】使用单记录插入INSERT语句,分别向用户数据库(mcuserdb)、商品数据库(mcproductdb)、订单数据库(mcorderdb)和管理数据库(mcadmindb)的各个表中插入数据,并通过SELECT语句检查插入前后的记录情况。
【实验2-8】使用带SELECT的INSERT语句,完成商品信息表product_info中数据的批量添加,并通过SELECT语句检查插入前后的记录情况。
【实验2-9】使用DELETE语句,分别完成购物车表order_cart、商品信息表product_info、订单主表order_master、订单详细信息表order_detail的数据删除,删除条件自定,并通过SELECT语句检查删除前后的记录情况。
【实验2-10】使用UPDATE语句,分别完成用户信息表user_information、购物车表order_cart、商品信息表product_info、商品分类信息表product_category、订单主表order_master、订单详细信息表order_detail的数据修改,修改后数据值自定,修改条件自定,并通过SELECT语句检查修改前后的记录情况。
【实验2-11】使用SELECT语句[包含GROUP BY子句、ORDER BY子句和SUM()函数]查询每个注册用户的消费总金额(所有订单),结果按照消费总金额降序排列。
【实验2-12】使用SELECT语句[包含GROUP BY子句和COUNT()函数]查询“网上商城”每天的接单数。
【实验2-13】使用SELECT语句[包含GROUP BY子句和SUM()函数]查询“网上商城”每天的的销售额。
【实验2-14】使用SELECT语句[包含GROUP BY子句和AVG()函数]查询“网上商城”所有订单的平均销售金额。
【实验2-15】使用SELECT语句[包含MAX()函数]查询所有用户按字母排序中名字最靠前者。
【实验2-16】使用SELECT语句查询“网上商城”所有用户的地域分布情况,将查询结果导入Excel,然后以饼图形式呈现。
【实验2-17】使用JOIN运算查询所有订单的发出者名字。
【实验2-18】使用JOIN运算查询用户ID为1的用户的订单信息和收货人地址、收货人名字。
【实验2-19】使用JOIN运算查询今年新增用户的消费金额,将查询结果导入Excel中,然后以柱状图形式呈现。
【实验2-20】使用EXIST谓词查询商品类别表中是否存在类别ID为1的类别,如果存在,列出此类别中商品价格小于5的商品ID。
【实验2-21】使用UNION运算查询类别ID为1或者2的,而且价格小于5的商品信息。
3. 考核要求
三种操作方式任选一种即可(三种方式有:MySQL可视化工具Navicat for MySQL,MySQL Workbench,命令行方式),每执行一种操作后,均要求将操作过程以屏幕抓图的方式复制,形成实验文档,以Word或者PDF报告形式进行提交。