目录
一、实验目的
1.掌握向数据表中插入数据的多种方法。
2.掌握更新和删除数据的方法。
3. 掌握单表查询及应用函数的查询方法。
4.掌握连接查询和子查询等复杂查询的方法。
5.掌握合并查询结果的方法。
6.掌握如何使用正则表达式查询。
二、实验内容
1.在Oracle数据库中创建数据表
根据下列表中的数据,在“xiehuan数据库”中创建数据表。
(要求:字段的数据类型设计合理,并设置主键、外键和非空等约束条件。)
表3-1 供应商信息表
编码 | 名称 | 联系人 | 地址 | 电话 |
1 | 华轩文具实业公司 | 张敏 | 郑州市开发区 | 0371-66780379 |
2 | 大华电脑公司 | 马涛明 | 上海市浦东开发区 | 021-58788388 |
3 | 斯达信息公司 | 郭晓明 | 深圳市龙岗区 | 0755-84812926 |
4 | 神州电脑 | 王敬新 | 重庆市长寿区 | 023-40230553 |
5 | 墨云图文设计 | 马建国 | 天津市南开区 | 022-83556012 |
6 | 佳能印务销售公司 | 刘天佑 | 上海市浦东区 | 021-58023310 |
表3-2 货品信息表
编码 | 名称 | 库存量 | 供应商编码 | 状态 | 售价/元 | 成本价/元 |
1 | 电脑桌 | 80 | 1 | 1 | 1500 | 1100 |
2 | 打印机 | 900 | 6 | 1 | 800 | 600 |
3 | 移动办公软件 | 100 | 3 | 1 | 8000 | 6000 |
4 | 计算机 | 368 | 2 | 1 | 3000 | 2100 |
5 | 大众轿车 | 20 | 5 | 1 | 140000 | 90000 |
6 | 电脑 | 20 | 4 | 1 | 14000 | 9000 |
表3-3 销售人员信息表
工号 | 部门号 | 姓名 | 性别 | 地址 | 电话 |
1 | 1 | 李明泽 | 男 | 北京市朝阳区 | 1******2345 |
2 | 2 | 王巧玲 | 女 | 北京市海淀区 | 1******2346 |
3 | 3 | 张小光 | 男 | 深圳市南山区 | 1******2347 |
4 | 4 | 钱三一 | 男 | 深圳市罗湖区 | 1******2348 |
5 | 3 | 周佳鹏 | 男 | 北京市海淀区 | 1******2349 |
6 | 1 | 张晓明 | 女 | 北京市海淀区 | 1******2350 |
7 | 5 | 田甜 | 女 | 重庆市江北区 | 1******2351 |
8 | 4 | 王涛 | 男 | 上海市浦东区 | 1******2352 |
表3-4 部门信息表
编号 | 名称 | 经理工号 | 人数 |
1 | 计算机销售部 | 1 | 10 |
2 | 手机销售部 | 2 | 200 |
3 | 打印机销售部 | 3 | 30 |
4 | 汽车销售部 | 4 | 8 |
5 | 办公用品销售部 | 7 | 10 |
表3-5 客户信息表
编号 | 姓名 | 地址 | 电话 |
1 | 李小红 | 重庆市渝中区 | 1******5879 |
2 | 明台 | 上海市黄埔区 | 1******8968 |
3 | 张晓涵 | 郑州市惠济区 | 1******2956 |
4 | 李思 | 郑州市金水区 | 1******5678 |
5 | 任燕 | 北京市朝阳区 | 1******5369 |
6 | 李娟 | 深圳市福田区 | 1******2398 |
表3-6 订单信息表
订单号 | 销售工号 | 货品编号 | 客户编号 | 数量 | 订货日期 |
1 | 1 | 1 | 1 | 20 | 2022-01-08 |
2 | 2 | 6 | 2 | 10 | 2022-02-14 |
3 | 3 | 2 | 4 | 10 | 2022-05-05 |
4 | 2 | 4 | 3 | 5 | 2022-06-23 |
5 | 4 | 5 | 6 | 2 | 2022-07-12 |
6 | 5 | 3 | 5 | 2 | 2022-08-30 |
7 | 7 | 1 | 1 | 1 | 2020-11-28 |
(1)供应商信息表的表结构
(2)货品信息表的表结构
(3)销售人员信息表的表结构
(4)部门信息表的表结构
(5)客户信息表的表结构
(6)订单信息表的表结构
2.插入、更新和删除数据
按下列要求,在“xiehuan数据库”中使用SQL语句完成插入、更新和删除数据,并查看修改后的结果。
(1)以指定所有字段名称的方式,向“订单信息”表插入记录。
(2)以不指定字段名称的方式,向“订单信息”表插入记录。
(3)向“订单信息”表同时插入多条(≥3)记录。
(4)将每个货品的售价在成本价的基础上再提高10%。也就是商品的毛利率提高10%。其中,毛利率=(1-进价/售价)×100%。
(5)删除2021年以前的订单。
3.查询数据
按下列要求,在“xiehuan 数据库”中使用SQL语句查询满足条件的数据,并显示。
- 查询“货品信息”表,列出表中的所有记录。每个记录包含货品的编码、好货品名称和库存量,显示的字段名分别为货品编码、货品名称和货品库存量。
(2)将“客户信息”表中深圳地区的客户信息,插入“深圳客户”表中。
(3)由“销售人员”表中找出下列人员的信息:李明哲,王巧玲,钱三一。
(4)由“客户信息”表中找出所有深圳区域的客户信息。
(5)由“订单信息”表中找出订货量在10~20的订单信息。
(6)求出2022年以来,每种货品的销售数量,统计的结果按照货品编号进行排序。
(7)由“订单信息”表中求出2022年以来,每种货品的销售数量,统计的结果按照货品编号进行排序,并显示统计的明细。
(8)给出“货品信息”表中货品的销售情况。所谓销售情况就是给出每个货品的销售数量、订货日期等相关信息。
(9)找出订货数量大于10的货品信息。
(10)找出有销售业绩的销售人员。
(11)查询每种货品订货量最大的订单信息。
三、实验总结
通过Oracle中数据操纵的应用实验,掌握了向数据表中插入数据的三种方法,第一种指定列名进行数据插入;第二种没有指定列名进行插入;第三种多行插入。掌握了表的数据的更新和删除数据的方法,更新update …… set ,删除delete from 。并接触了函数的查询方法、连接查询、子查询等复杂查询的方法。实验中有所收获,通过学习、思考、解决问题,让自己得到一个锻炼。