网站管家,六安网站制作,如何申请国外网站,钱网站制作一、 实验目的 #xff08;1#xff09; 掌握数据的插入#xff08;INSERT#xff09;、 修改#xff08;UPDATE#xff09; 和删除#xff08;DELETE#xff09; 操作。 #xff08;2#xff09; 掌握不同类型的数据查询#xff08;SELECT#xff09; 操作。 二、…一、 实验目的 1 掌握数据的插入INSERT、 修改UPDATE 和删除DELETE 操作。 2 掌握不同类型的数据查询SELECT 操作。 二、 实验要求 1 利用 INSERT 语句向图书销售系统表中插入数据。 2 利用 UPDATE 语句修改图书销售系统表中的数据。 3 利用 DELETE 语句删除图书销售系统表中的数据。 4 利用 SELECT 语句实现对图书销售系统数据的有条件查询、 分组查询、 连接查询、 子查询等。 三、 实验内容 1 以 bs 用户登录 BOOKSALES 数据库 将下列表中的数据插入到数据库的相应表中。 2 将 ISBN 为 978-7-121-18619-8 的图书的零售价格retail 修改为 30。 3 将订单号为 1000 的订单的发货日期修改为“2013-2-2”。 4 查询 BOOKS 表中包含的所有图书列表。 5 列出 BOOKS 表中有图书类型非空的图书书名。 6 列出 BOOKS 表中每本书的书名和出版日期。 对 pubdate 字段使用 Publication Date 列标题。 7 列出 CUSTOMERS 表中每一个客户的客户号以及他们所在的地址。 8 创建一个包含各个出版社的名称、 联系人以及出版社电话号码的列表。 其中 联系人的列在显示的结果中重命名为 Contact Person。 9 查询下达了订单的每一个客户的客户号。 10 查询 2013 年 3 月 1 日之后发货的订单。 11 查询居住在北京或大连的客户 将结果按姓名的升序排列。 12 列出姓“王” 的作者编写的所有图书信息 并将结果按姓名降序排序。 13 查询“儿童” 类和“烹饪” 类的所有图书。 14 查询书名的第二个字母是“A”、 第四个字母是“N” 的图书信息。 15 查询电子工业出版社在 2012 年出版的所有“计算机” 类图书的名称。 16 查询图书名称、 出版社名称、 出版社联系人的名称、 EMAIL 和电话号码。 17查询当前还没有发货的订单信息及下达订单的用户名 查询结果按下达订单日期排序。 18 查询已经购买了“计算机” 类图书的所有人的客户号和姓名。 19 查询“王牧” 购买的图书的 ISBN 以及书名。 20 查询订购图书“Oracle 数据库基础” 的客户将收到什么样的礼品。 21 确定客户“张扬” 订购的图书的作者。 22 查询 CUSTOMERS 表中的每一个客户所下达的订单数量。 23 查询价格低于同一种类中其它图书的平均价格的图书的信息。 24 查询每个出版社出版图书的平均价格、 最高价格、 最低价格。 25 统计每个客户购买图书的数量及总价钱。 26 查询比 1 号订单中图书数量多的其它订单信息。 27 查询所以客户及其订购图书的信息。 28 查询没有订购任何图书的客户信息。 29 查询订购金额最高的客户信息。 30 查询名为“赵敏” 的客户订购图书的订单信息、 订单明细。 四、问题解答及实验结果 1 以 bs 用户登录 BOOKSALES 数据库 将下列表中的数据插入到数据库的相应表中。 SQL create sequence customers_customer_id minvalue 1 nomaxvalue increment by 1 start with 1 nocache; SQL insert into customers values(customers_customer_id.nextval,‘王牧’,‘83823422’,‘Wangmusina.com’,‘北京’,‘110010’); SQL insert into customers values(customers_customer_id.nextval,‘李青’,‘83824566’,‘Liqingsina.com’,‘大连’,‘116023’); SQL insert into publishers values(1,‘电子工业出版社’,‘张芳’,‘56231234’); SQL insert into publishers values(2,‘机械工业出版社’,‘孙翔’,‘89673456’); SQL insert into books values(‘978-7-121-18619-8’,‘文化基础’,‘王澜’,to_date(‘2010-1-1’,‘yyyy-mm-dd’),2,35,28,‘管理’); SQL insert into books values(‘978-7-122-18619-8’,‘Oracle’,‘孙风栋’,to_date(‘2011-2-1’,‘yyyy-mm-dd’),1,40,32,‘计算机’); SQL insert into orders values(orders_order_id.nextval,3,to_date(‘2013-2-1’,‘yyyy-mm-dd’),to_date(‘2013-2-5’,‘yyyy-mm-dd’),‘大连’,‘116023’); SQL insert into orders values(orders_order_id.nextval,2,to_date(‘2013-3-1’,‘yyyy-mm-dd’),to_date(‘2013-3-1’,‘yyyy-mm-dd’),‘大连’,‘116023’); SQL insert into orderitem values(1000,1,‘978-7-121-18619-8’,5); SQL insert into orderitem values(1000,2,‘978-7-122-18619-8’,20); SQL Insert Into orderitem values(1001,1,‘978-7-121-18619-8’,15); SQL insert into promotion values(1,‘签字笔’,100,150); SQL insert into promotion values(2,‘笔记本’,150,300); SQL insert into promotion values(3,‘保温杯’,300,500);
2 将 ISBN 为 978-7-121-18619-8 的图书的零售价格retail 修改为 30。 SQL update books set retail30 where isbn‘978-7-121-18619-8’;
3 将订单号为 1000 的订单的发货日期修改为“2013-2-2”。 SQL update orders set shipdateto_date(‘2013-2-2’,‘yyyy-mm-dd’) where order_id1000;
4 查询 BOOKS 表中包含的所有图书列表。 SQL select * from books;
5 列出 BOOKS 表中有图书类型非空的图书书名。 SQL select title from books where category is not null;
6 列出 BOOKS 表中每本书的书名和出版日期。 对 pubdate 字段使用 Publication Date 列标题。 SQL select title,pubdate “Publication Date” from books;
7 列出 CUSTOMERS 表中每一个客户的客户号以及他们所在的地址。 SQL select customer_id,address from customers;
8 创建一个包含各个出版社的名称、 联系人以及出版社电话号码的列表。 其中 联系人的列在显示的结果中重命名为 Contact Person。 SQL select name,contact “Contact Person”,phone from publishers;
9 查询下达了订单的每一个客户的客户号。 SQL select customer_id from orders where order_id is not null;
10 查询 2013 年 3 月 1 日之后发货的订单。 SQL select * from orders where shipdate to_date(‘2013-3-1’,‘yyyy-mm-dd’);
11 查询居住在北京或大连的客户 将结果按姓名的升序排列。 SQL select * from customers where address‘大连’ or address‘北京’ order by name;
12 列出姓“王” 的作者编写的所有图书信息 并将结果按姓名降序排序。 SQL select * from books where author like ‘王%’ order by author;
13 查询“儿童” 类和“烹饪” 类的所有图书。 SQL select * from books where category‘儿童’ or category‘烹饪’; 14 查询书名的第二个字母是“A”、 第四个字母是“N” 的图书信息。 SQL select * from books where title like ‘_A_N%’;
15 查询电子工业出版社在 2012 年出版的所有“计算机” 类图书的名称。 SQL select title from books,publishers where books.publisher_idpublishers.publisher_id and name‘电子工业出版社’ and pubdateto_date(‘2012-1-1’,‘YYYY -mm-dd’) and pubdateto_date(‘2013-1-1’,‘YYYY-mm-dd’);
16 查询图书名称、 出版社名称、 出版社联系人的名称、 EMAIL 和电话号码。 SQL select title,name,contact,phone from books,publishers where books.publisher_idpublishers.publisher_id;
17查询当前还没有发货的订单信息及下达订单的用户名 查询结果按下达订单日期排序。 SQL select order_id,customers.name,orderdate,shipdate,shipaddress,shipaddress,shipcode from customers,orders where customers.customer_idorders.customer_id and shipdateto_date(‘2013-3-1’,‘yyyy-mm-dd’) order by orderdate;
18 查询已经购买了“计算机” 类图书的所有人的客户号和姓名。 SQL select customers.customer_id,customers.name from customers,orders,orderitem,books where customers.customer_idorders.customer_id and orders.order_idorderitem.r_id and orderitem.isbnbooks.isbn and books.category‘计算机’;
19 查询“王牧” 购买的图书的 ISBN 以及书名。 SQL select books.isbn,books.title from customers,books,orders,orderitem where customers.customer_idorders.customer_id and orders.order_idorderitem.r_id and orderitem.isbnbooks.isbn and customers.name‘王牧’;
20 查询订购图书“Oracle 数据库基础” 的客户将收到什么样的礼品。 SQL select books.isbn,books.title from customers,books,orders,orderitem where customers.customer_idorders.customer_id and orders.order_idorderitem.r_id and orderitem.isbnbooks.isbn and books.title‘Oracle’;
21 确定客户“张扬” 订购的图书的作者。 SQL select order_id,customers.name,orderdate,shipdate,shipaddress,shipcode from customers,orders where customers.customer_idorders.customer_id and shipdateto_date(‘2013-3-1’,‘yyyy-mm-dd’) order by orderdate;
22 查询 CUSTOMERS 表中的每一个客户所下达的订单数量。 SQL select * from customers where customer_id not in(select customer_id from orders);
23 查询价格低于同一种类中其它图书的平均价格的图书的信息。 SQL select category,min(retail),max(retail),avg(retail) from books group by category;
24 查询每个出版社出版图书的平均价格、 最高价格、 最低价格。 SQL select category,min(retail),max(retail),avg(retail) from books group by category;
25 统计每个客户购买图书的数量及总价钱。 SQL select orders.order_id,orders.customer_id,orderitem.quantity from orders,orderitem where quantity (select quantity from orderitem where order_id1001 and item1);
26 查询比 1 号订单中图书数量多的其它订单信息。 SQL select order_id,sum(quantity) from orderitem group by order_id having sum(quantity) (select sum(quantity) from orderitem group by order_id having order_id1000);
27 查询所以客户及其订购图书的信息。 SQL select * from customers where customer_id not in(select customer_id from orders);
28 查询没有订购任何图书的客户信息。 SQL select * from customers where customer_id not in(select customer_id from orders);
29 查询订购金额最高的客户信息。 SQL select customers.customer_id,customers.name,customers.phone,customers.email,customers.address,customers.code from customers,orders,orderitem where customers.customer_idorders.customer_id and orders.order_idorderitem.order_id and orderitem.quantity(select max(quantity) from orderitem);
30 查询名为“赵敏” 的客户订购图书的订单信息、 订单明细。 SQL select * from orders,orderitem,customers where orders.customer_idcustomers.customer_id and customers.name‘赵敏’;
五、实验体会与收获 通过这个实验我深入理解和掌握SQL语句的使用提高数据库操作的能力。并且能够熟练地使用SQL语句进行数据库操作。这个实验对于学习数据库管理和SQL语句的应用非常有帮助。能够帮助我更好地理解和掌握SQL语句的使用。