网络数据库实验报告.docx
- 文档编号:14014919
- 上传时间:2023-06-20
- 格式:DOCX
- 页数:43
- 大小:1.55MB
网络数据库实验报告.docx
《网络数据库实验报告.docx》由会员分享,可在线阅读,更多相关《网络数据库实验报告.docx(43页珍藏版)》请在冰点文库上搜索。
网络数据库实验报告
中北大学
网络数据库实验报告
实验名称:
网络数据库实验
姓名:
学号:
学院:
机械与动力工程学院
专业:
工业工程
2014年10月
(一)数据库创建与管理实验
一、实验内容
1、创建实验所用到的“网上购物系统”数据库zjj01。
2、保存实验结果到网络文件夹。
二、实验目的
1、了解本书示例数据库student和eshop的基本组成。
2、掌握查询分析器的使用方法。
3、掌握应用企业管理器创建数据库的方法。
4、掌握应用企业管理器修改和查看数据库的方法。
5、掌握应用企业管理器删除数据库的方法。
6、掌握应用T-SQL创建数据库的方法。
7、掌握应用T-SQL修改和查看数据库的方法。
8、掌握通过T-SQL删除数据库的方法。
9、掌握SQLServer2000数据库和操作系统物理文件的关系。
三、实验过程
1、使用系统缺省方式创建“网上购物系统”数据库zjj01。
2、在操作系统环境下找到zjj01数据库对应的物理文件的位置并查看其属性。
3、查看zjj01数据库的相关信息。
4、删除zjj01数据库。
5、在E盘(根据机房环境选择)创建文件夹mydata。
6、在E:
\mydata文件夹下创建名为zjj01的数据库,同时指定zjj01_dat为数据库主文件名,zjj01_log为数据库日志文件名,文件初始大小为10M,最大为50M,文件增长为5M,SQL代码如下所示:
CREATEDATABASEzjj01
ONPRIMARY
(
NAME=zjj01_dat,
FILENAME='E:
\mydata\zjj01_dat.mdf',
SIZE=10MB,
MAXSIZE=50MB,
FILEGROWTH=5MB
)
LOGON
(
NAME=zjj01_log,
FILENAME='E:
\mydata\zjj01_log.ldf',
SIZE=10MB,
MAXSIZE=50MB,
FILEGROWTH=5MB
)
GO
7、在操作系统环境下找到zjj01数据库对应的物理文件的位置并查看其属性。
8、查看新建数据库和数据库文件的相关信息,SQL代码如下所示:
sp_helpdbzjj01
9、在zjj01数据库中添加一个次要数据库文件(zjj01_dat2),文件初始大小为5MB,最大容量为
100MB,文件增长为5MB,SQL代码如下所示。
ALTERDATABASEzjj01
ADDFILE
(
NAME=zjj01_dat2,
FILENAME='E:
\mydata\zjj01_dat2.ndf',
SIZE=5MB,
MAXSIZE=100MB,
FILEGROWTH=5MB
)
10、查看修改后的数据库和数据库文件的相关信息,SQL代码如下:
sp_helpdbzjj01
11、删除步骤9中所添加次要数据库文件zjj01_dat2,SQL代码如下所示:
ALTERDATABASEzjj01
REMOVEFILEzjj01_dat2
12、将zjj01数据库改名为zjj01_bak,SQL代码如下所示:
sp_renamedb'zjj01','zjj01_bak'
13、删除zjj01_bak数据库,SQL代码如下所示:
DROPDATABASEzjj01_bak
14、将步骤6-13命令脚本(DB01.SQL)保存上交以备教师检查。
15、重复执行步骤6,并将建库脚本(DB02.SQL)保存上交以备教师检查和后续实验使用。
四、实验过程中遇到的问题及实验总结
通过亲手实践,掌握了SQLServer数据库对应的物理文件、存储过程sp_helpdb的功能和执行以及数据库大小的估算和设置,对数据库有了比较深入的了解。
(一)数据库创建与管理实验
一、实验内容
1、创建好的“网上购物系统”数据库zjj01中的members表、products表和orders表。
2、保存实验结果到网络文件夹。
二、实验目的
1、了解表设计和表结构相关知识。
2、了解SQLServer2000中的常用数据类型。
3、掌握应用企业管理器创建和修改表的方法。
4、掌握应用企业管理器查看和删除表方法。
5、掌握应用T-SQL创建和修改表的方法。
6、掌握应用T-SQL查看和删除表的方法。
7、了解表和数据库的关系。
三、实验过程
1、在zjj01数据库中创建表会员表members,SQL代码如下所示:
USEzjj01
CREATETABLEmembers
(
m_accountVARCHAR(20)NOTNULL,
m_nameVARCHAR(20),
m_sexCHAR
(2),
m_birthDATETIME,
m_addressVARCHAR(50),
m_salaryMONEY,
m_passwordVARCHAR(20)
)
GO
2、查看members表的相关信息,SQL代码如下所示:
USEzjj01
EXECsp_helpmembers
3、在members表中新增一列电子邮件m_mail(VARCHAR,20),SQL代码如下所示:
USEzjj01
ALTERTABLEmembers
ADDm_mailVARCHAR(20)
4、将members表中的现有列m_address修改为(VARCHAR,30),SQL代码如下所示:
USEzjj01
ALTERTABLEmembers
ALTERCOLUMNm_addressVARCHAR(30)
5、删除步骤3中所建列m_mail,SQL代码如下所示:
USEzjj01
ALTERTABLEmembers
DROPCOLUMNm_mail
6、删除表members,SQL代码如下所示:
DROPTABLEmembers
7、将步骤1-6脚本保存(TABLE01.SQL)上交以备教师检查
8、应用企业管理器完成步骤1-6,并与T-SQL操作进行比较。
9、在zjj01数据库中按要求创建表会员表members,SQL代码如下所示:
USEzjj01
CREATETABLEmembers
(
m_accountVARCHAR(20),
m_nameVARCHAR(20),
m_sexCHAR
(2),
m_birthDATETIME,
m_addressVARCHAR(50),
m_salaryMONEY,
m_passwordVARCHAR(20)
)
GO
10、在zjj01数据库中按要求创建表商品表products,SQL代码如下所示:
USEzjj01
CREATETABLEproducts
(
p_noCHAR(10),
p_nameVARCHAR(30),
p_dateDATETIME,
p_quantityINT,
p_priceMONEY,
p_informationVARCHAR(50)
)
GO
11、在zjj01数据库中按要求创建表订单表orders。
12、将步骤8-10建表脚本(TABLE02.SQL)保存上交以备教师检查及后续实验使用。
四、实验过程中遇到的问题及实验总结
通过亲手实践进行上机实验,掌握了用企业管理器和T-SQL创建多种表,对数据库实验操作有了更为深入的了解。
(一)数据库创建与管理实验
一、实验内容
1、在已经创建好的zjj01数据库中的各表中添加样例数据。
2、保存实验结果到网络文件夹。
二、实验目的
1、掌握INSERTINTO语句的方法。
2、了解INSERTFROM语句的方法。
3、掌握UPDATE语句的方法。
4、掌握DELETE语句的方法
三、实验过程
1、在zjj01数据库的members表中增加2条记录,内容如下:
‘jinjin’,‘津津有味’,‘女’,‘1982-04-14’,‘北京市’,8200.0,‘jinjin’
‘liuzc518’,‘刘志成’,‘男’,‘1972-05-18’,‘湖南株洲’,3500.0,‘liuzc518’
SQL代码如下所示:
USEzjj01
INSERTINTOmembersVALUES('jinjin','津津有味','女','1982-04-14','北京市',8200.0,'jinjin')
INSERTINTOmembersVALUES('liuzc518','刘志成','男','1972-05-18','湖南株洲',3500.0,'liuzc518')
2、将姓名为“津津有味”的姓名修改为“刘津”,SQL代码如下所示:
USEzjj01
UPDATEmembers
SETm_name='刘津'
WHEREm_name='津津有味'
3、将m_sex(性别)为‘男’且m_address(家庭地址)为‘湖南株洲’的会员的m_salary(月薪)增加
20%,SQL代码如下所示:
USEzjj01
UPDATEmembers
SETm_salary=m_salary*(1+0.20)
WHEREm_sex='男'
ANDm_address='湖南株洲'
4、删除m_address(家庭地址)为‘北京市’的会员记录,SQL代码如下所示:
USEzjj01
DELETE
FROMmembers
WHEREm_address='北京市'
5、删除members表中所有记录,SQL代码如下所示:
USEzjj01
DELETE
FROMmembers
6、将步骤1-5脚本(RECORD01.SQL)保存上交以备教师检查。
7、应用企业管理器完成步骤1-5,并与T-SQL操作进行比较。
8、在zjj01数据库的members表中添加所有样例数据,SQL代码如下所示:
USEzjj01
INSERTINTOmembersVALUES('Jinjin','津津有味','女','1982-04-14','北京市',8200.0,'jinjin')
INSERTINTOmembersVALUES('Lfz','刘法治','男','1976-08-26','天津市',4500.0,'lfz0826')
INSERTINTOmembersVALUES('liuzc518','刘志成','男','1972-05-18','湖南株洲',3500.0,'liuzc518')
INSERTINTOmembersVALUES('Wangym','王咏梅','女','1974-08-06','湖南长沙',4000.0,'wangym0806')
INSERTINTOmembersVALUES('Zhangzl','张自梁','男','1975-04-20','湖南株洲',4300.0,'zhangzl')
INSERTINTOmembersVALUES('zhao888','赵爱云','男','1972-02-12','湖南株洲',5500.0,'zhao888')
9、在zjj01数据库的products表中添加所有样例数据,SQL代码如下所示:
USEzjj01
INSERTINTOproductsVALUES('0130810324','清华同方电脑','2005-12-11',7,8000.0,'优惠多多')
INSERTINTOproductsVALUES('0140810330','洗衣粉','2005-05-31',1000,8.6,'特价销售')
INSERTINTOproductsVALUES('0140810332','红彤彤腊肉','2005-05-20',43,15.0,'是一种卫生食品')
INSERTINTOproductsVALUES('0140810333','力士牌香皂','2005-05-06',22,6.0,'是一种清洁用品')
INSERTINTOproductsVALUES('0240810330','电动自行车','2005-05-31',10,1586.0,'价廉物美')
INSERTINTOproductsVALUES('0240810333','自行车','2005-05-31',10,586.0,'价廉物美')
INSERTINTOproductsVALUES('0910810001','爱国者MP3','2005-05-31',100,450.0,'价廉物美')
INSERTINTOproductsVALUES('0910810002','商务通','2005-05-20',10,850.0,'价廉物美')
INSERTINTOproductsVALUES('0910810003','名人好记星','2005-05-31',100,550.0,'价廉物美')
INSERTINTOproductsVALUES('0910810004','奥美嘉U盘','2005-05-31',100,350.0,'价廉物美')
10、在zjj01数据库的orders表中添加所有样例数据,SQL代码如下所示:
USEzjj01
INSERTINTOordersVALUES('jinjin','0910810004',2,'2005-06-06','1','0','0')
INSERTINTOordersVALUES('jinjin','0910810004',1,'2005-08-09','1','1','1')
INSERTINTOordersVALUES('lfz','0910810001',1,'2005-08-09','0','0','0')
INSERTINTOordersVALUES('lfz','0910810004',2,'2005-06-06','1','1','1')
INSERTINTOordersVALUES('lfz','0910810004',2,'2005-08-09','1','1','1')
INSERTINTOordersVALUES('liuzc518','0140810324',1,'2005-10-09','0','0','0')
INSERTINTOordersVALUES('liuzc518','0910810001',1,'2005-10-09','1','1','0')
INSERTINTOordersVALUES('liuzc518','0910810004',2,'2005-10-09','1','1','0')
INSERTINTOordersVALUES('wangym','0910810001',1,'2005-08-09','1','0','0')
INSERTINTOordersVALUES('zhao888','0240810333',2,'2005-06-06','1','1','0')
11、将步骤8-10命令脚本(RECORD02.SQL)保存上交以备教师检查及后续实验使用。
四、实验过程中遇到的问题及实验总结
本实验主要是对已创建数据库中表的操作,对其中的内容进行添加、修改、删除等操作,通过对信息的多次录入,熟练了数据库编程语言。
(二)数据查询与维护实验
一、实验内容
1、应用SELECT语句对数据库zjj01中数据进行指定条件的简单查询。
2、保存实验结果到网络文件夹。
二、实验目的
1、掌握SELECT语句的基本方法。
2、掌握从表中查询特定行的方法。
3、掌握从表中查询前N行的方法。
4、掌握从查询结果中去掉重复行的方法。
5、掌握使用列的别名的方法。
6、掌握从表中查询特定列的方法。
7、掌握查询表中计算列的方法。
8、掌握查询语句中的通配符的使用。
三、实验过程
1、查询products表中p_price(商品价格)在800以上的商品详细信息,SQL代码如下所示:
USEzjj01
SELECT*
FROMproducts
WHEREp_price>800
2、查询products表中p_quantity(商品数量)在20和50之间的商品编号、商品名称和商品数量,SQL代码如下所示:
USEzjj01
SELECTp_no,p_name,p_quantity
FROMproducts
WHEREp_quantity>=20
ANDp_quantity<=50
3、查询orders表中各会员购买商品的总量,并以汉字列标题形式输出会员帐号,商品总额,SQL代码如下所示:
USEzjj01
SELECTm_account会员帐号,o_quantity商品总额
FROMorders
4、查询members表中家庭地址为“湖南”的会员详细信息,SQL代码如下所示:
USEzjj01
SELECT*
FROMmembers
WHEREm_addressLIKE'湖南%'
5、查询members表中年龄大于30且性别为“男”的会员详细信息,SQL代码如下所示:
USEzjj01
SELECT*
FROMmembers
WHEREDATEDIFF(YY,m_birth,GETDATE())>30ANDm_sex='男'
6、查询orders表各商品销售总量前3名的商品编号和销售总量,SQL代码如下所示:
SELECTTOP3p_no,sum(o_quantity)AS‘ZL’//1-52-63-11-502-7
FROMorders
GROUPBYp_no
ORDERBYZLDESC//descendascend
7、查询orders表中购买过商品的会员帐号,要求去掉重复行,SQL代码如下所示:
USEzjj01
SELECTDISTINCTm_account
FROMorders
8、查询orders表已确认、已支付和已配送的订单详细信息,SQL代码如下所示:
USEzjj01
SELECT*
FROMorders
WHEREo_confirm_state='1'
ANDo_pay_state='1'
ANDo_send_state='1'
9、将步骤1-8命令脚本(SELECT01.SQL)保存上交以备教师检查。
四、实验过程中遇到的问题及实验总结
通过实验练习,熟练掌握了SELECT语句的程序编辑及其查询功能的应用。
(二)数据查询与维护实验
一、实验内容
1、应用SELECT语句对数据库zjj01中数据进行指定条件的高级查询。
2、保存实验结果到网络文件夹。
二、实验目的
1、掌握查询结果排序的方法。
2、掌握排序结果进行计算的方法。
3、掌握排序结果分组的方法。
4、掌握排序结果分组后再选择的方法。
三、实验过程
1、查询性别为“男”的会员详细信息,查询结果按月薪降序排列,SQL代码如下所示:
USEzjj01
SELECT*
FROMmembers
WHEREm_sex='男'
ORDERBYm_salaryDESC
2、查询全体会员的会员帐号,姓名和年龄并按家庭地址升序排列,同一地址中的会员按年龄降序排列,SQL代码如下所示:
USEzjj01
SELECTm_account,m_name,YEAR(GETDATE())-YEAR(m_birth)as年龄
FROMmembers
ORDERBYm_addressasc,年龄
3、查询会员帐号为’liuzc’所购买的商品号和订购日期,并按订购日期升序排列,SQL代码如下所示:
USEzjj01
SELECTp_no,o_date
FROMorders
WHEREm_account='liuzc'
ORDERBYo_date
4、查询购买商品号为’0910810004’总人数,SQL代码如下所示:
USEzjj01
SELECTCOUNT(*)
FROMorders
WHEREp_no='0910810004'
5、查询2005年6月6日前,所有商品的订购总量,要求输出商品号和订购总量,SQL代码如下所示:
USEzjj01
SELECTp_no,SUM(o_quantity)
FROMorders
WHEREo_date<'2005-6-6'
GROUPBYp_no
6、查询所有会员的平均月薪,最高月薪和最低月薪之和,SQL代码如下所示:
USEzjj01
SELECTAVG(m_salary)+MAX(m_salary)+MIN(m_salary)
FROMmembers
7、查询所有会员购买商品的种类和,要求输出会员号和商品种类和,SQL代码如下所示:
USEzjj01
SELECTm_account,COUNT(DISTINCTp_no)
FROMorders
GROUPBYm_account
8、查询各类商品的最高购买数量,要求输出最高数量大于10的商品号和最高数量,SQL代码如下所示:
USEzjj01
SELECTTOP1p_no,SUM(o_quantity)
FROMorders
GROUPBYp_no
HAVINGSUM(o_quantity)>10
ORDERBYSUM(o_quantity)DESC
9、将步骤1-8命令脚本(SELECT02.SQL)保存上交以备教师检查。
四、实验过程中遇到的问题及实验总结
此次实验在查询的基础上增加了排序功能,通过练习,掌握了对查询结果排序以及排序结果分组后再选择的方法。
(二)数据查询与维护实验
一、实验内容
1、应用SELECT语句对数据库zjj01中数据进行指定条件的联接查询。
2、保存实验结果到网络文件夹。
二、实验目的
1、熟悉等值联接查询的方法。
2、熟悉非等值联接查询的方法。
3、熟悉自身联接查询的方法。
4、熟悉外联接查询的方法。
5、熟悉复合条件联接的方法。
6、熟悉集合查询的方法。
7、熟悉子查询的方法。
8、子查询和联接查询的区别及联系。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 网络 数据库 实验 报告