《我的租房网》数据库实训项目指导书.docx

上传人:b****4 文档编号:11358461 上传时间:2023-05-31 格式:DOCX 页数:15 大小:325.96KB
下载 相关 举报
《我的租房网》数据库实训项目指导书.docx_第1页
第1页 / 共15页
《我的租房网》数据库实训项目指导书.docx_第2页
第2页 / 共15页
《我的租房网》数据库实训项目指导书.docx_第3页
第3页 / 共15页
《我的租房网》数据库实训项目指导书.docx_第4页
第4页 / 共15页
《我的租房网》数据库实训项目指导书.docx_第5页
第5页 / 共15页
《我的租房网》数据库实训项目指导书.docx_第6页
第6页 / 共15页
《我的租房网》数据库实训项目指导书.docx_第7页
第7页 / 共15页
《我的租房网》数据库实训项目指导书.docx_第8页
第8页 / 共15页
《我的租房网》数据库实训项目指导书.docx_第9页
第9页 / 共15页
《我的租房网》数据库实训项目指导书.docx_第10页
第10页 / 共15页
《我的租房网》数据库实训项目指导书.docx_第11页
第11页 / 共15页
《我的租房网》数据库实训项目指导书.docx_第12页
第12页 / 共15页
《我的租房网》数据库实训项目指导书.docx_第13页
第13页 / 共15页
《我的租房网》数据库实训项目指导书.docx_第14页
第14页 / 共15页
《我的租房网》数据库实训项目指导书.docx_第15页
第15页 / 共15页
亲,该文档总共15页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

《我的租房网》数据库实训项目指导书.docx

《《我的租房网》数据库实训项目指导书.docx》由会员分享,可在线阅读,更多相关《《我的租房网》数据库实训项目指导书.docx(15页珍藏版)》请在冰点文库上搜索。

《我的租房网》数据库实训项目指导书.docx

《我的租房网》数据库实训项目指导书

实训项目:

我的租房网

一、项目背景

1、项目任务

ØT-SQL编程创建事务产生随机测试数据

Ø实现各种业务查询功能

2、项目技能目标

Ø使用临时表保存临时查询结果

Ø使用子查询、联接查询、联合查询

Ø使用事务和视图

Ø使用T-SQL编程批量插入测试数据

3、需求概述

项目组接受开发“我的租房网”软件任务,现在项目组接受数据库设计工作,“我的租房网”数据库House包括客户信息表、区县信息表、街道信息表、房屋类型表和出租房屋信息表共5个表,各表结构如下表1-5所示:

表1.客户信息表sys_user结构

列名称

数据类型

说明

UserId

int

客户编号,主键,标识列从1开始,递增值为1

UserName

varchar

客户姓名,该栏必填

UserPwd

varchar

密码,至少6个字符

表2.区县信息表hos_district结构

列名称

数据类型

说明

DId

int

区县编号,主键,标识列从1开始,递增值为1

DName

varchar

区县名称,该栏必填

表3.街道信息表hos_street结构

列名称

数据类型

说明

StreetId

int

街道编号,主键,标识列从1开始,递增值为1

SName

varchar

街道名称,该栏必填

SDId

Int

区县编号,表hos_district的外键

表4.房屋类型表hos_type结构

列名称

数据类型

说明

HTId

int

房屋类型编号,主键,标识列从1开始,递增值为1

HTName

varchar

房屋类型名称,该栏必填

表5.出租房屋信息表hos_house结构

列名称

数据类型

说明

HMID

int

出租房屋编号,主键,标识列从1开始,递增值为1

UserId

varchar

客户编号,该栏必填,外键

StreetID

int

街道编号,该栏必填,外键

HTId

int

房屋类型编号,该栏必填,外键

Price

decimaldecimal:

('10':

10位数字,'2':

两位有效数字)

月租金,该栏必填,默认值为0,要求大于等于0

Topic

varchar

标题,该栏必填

Contents

varchar

描述,该栏必填

HTime

datetime

发布时间,该栏必填,默认值为当前日期,要求不大于当前日期

Copy

varchar

备注

4、开发环境

Ø数据库:

SQLSERVER2008开发版

5、实训进度安排

实训进度安排如下表所示:

表6.实训进度安排

实训内容

所需学时

提交文档

实训一:

建立数据库结构

4

T-SQL源文件

实训二:

添加测试数据

6

T-SQL源文件

实训三:

综合查询

6

T-SQL源文件

实训四:

业务统计

8

T-SQL源文件

二、项目实训内容

实训内容由4个实训项目构成,建议在参考代码和实现步骤基础上进行改进,每个实训子项目的T-SQL语句写成1个T-SQL源文件,如item1.sql。

1、实训一:

建立数据库结构

(1)创建数据库House

使用SSMS向导创建数据库House,如下图所示:

图1.创建数据库House

扩展内容:

要求用T-SQL语句建立house1数据库。

(2)建立5张数据表

要求使用T-SQL语句建立5张数据表及相应的各种约束,要求遵循编程规范及添加注释。

注意:

字段名不能使用T-SQL关键字,另外外键和主键数据类型要求一致。

参考代码如下所示:

--创建客户信息表sys_user

createtablesys_user

--客户编号,主键标识列

UserIdintidentity(1,1)primarykey,

--客户姓名,非空

UserNamevarchar(50)notnull,

--客户密码,至少个字符

UserPwdvarchar(50),

constraintck_UserPwdcheck(len(UserPwd)>=6)

);

(3)添加外键约束

使用AlterTable语句为hos_house表建立外键关系。

也可以建表时建立外键关系。

2、实训二:

添加测试数据

(1)主表添加测试数据

用T-SQL语句向客户信息表、区县信息表各添加2条测试数据,街道信息表里每个区县添加1-2个街道,房屋类型表添加2条。

注意上述4个表的自动增长列字段的值。

4个主表的测试数据如下图所示:

图2.4个主表的测试数据

(2)添加批量数据

Ø要求使用事务和While循环,向出租房屋表hos_house增加30条记录(各个字段的内容随机产生),如下图所示:

图3.房屋信息表记录

Ø其中用户编号UserID随机取用户表里的UserID,其他的类似街道编号StreetId、HTID也随机均取自主表的相应编号。

租金Price在1000—4000之间随机产生,发布时间HTime自当前系统日期之间近一年内随机产生。

Ø标题Topic、描述Contents和备注Copy建议从3个临时表里随机取相应的记录。

3个临时表内容如下所示:

图4.3个临时表的记录集

Ø参考代码

selecttop1@userid=useridfromsys_userorderbyNEWID()

--租金在-4000之间随机产生

set@price=1000+cast(3000*RAND()asint)

--发布时间@htime,要求小于当前系统时间,发布时间在当前系统时间一年内

set@htime=cast(dateadd(day,-cast(rand()*asint),getdate())asdate)

3、实训三:

综合查询

(1)分页显示查询出租房屋信息

查询输出第6-10条出租房屋信息:

Ø使用Top关键字实现查询分页显示,用临时表先取出前10条记录,然后再在临时表里取出第6-第10条记录。

图5.使用Top关键字和临时表分页显示

Ø使用RowNumber函数,要求所有的列标题使用中文,查询结果如下图所示:

图6.使用RowNumber函数实现分页显示

(2)查询指定客户发布的出租房屋信息

查询张三发布的所有出租房屋信息,并显示房屋分布的街道和区县,要求分别按下述2种方法实现图7的查询结果:

Ø使用内联接innerjoin查询和子查询实现。

Ø使用where子句和内查询实现。

查询结果如下图所示:

图7.查询张三发布的所有出租房屋信息

(3)按区县制作房屋出租清单

为至少有2个街道有出租房屋的区县制作出租房屋清单,使用having子句筛选出街道数量大于1的区县。

图8.按区县制作房屋出租清单

提示代码:

select.......from......

andD.DIdin

(selectA.DId

from......AgroupbyA.DIdhaving(COUNT(A.Streetid)>1))

4、实训四:

业务统计

(1)按季度统计本年度发布的房屋出租数量

创建视图View_QTDst本年各个季度各区县各街道销售的各房型出租数量。

结果如下图所示:

图9.视图View_QTDst查询结果

(2)统计出各个季度各个区县出租房屋的数量

在视图View_QTDst上进行汇总统计,结果如下图所示:

图10.各个季度各个区县出租房屋的数量

(3)统计出各个季度各个区县出租房屋的数量总和及街道户型明细

使用联合查询输出各个季度总量,结果如下图所示:

图11.各个季度总量

三、项目实训报告要求

1、设计报告及书写内容要求

每个人需独立完成1份实训项目设计报告,不得雷同。

(1)封面:

参照下页的封面格式打印。

(2)主要内容:

Ø实现步骤

按照任务描述,分别写出实训1-4的实现步骤:

包括分析过程、T-SQL代码、执行结果。

Ø项目心得体会

针对该项目,有哪些收获或者心得体会、建议。

项目中列举1-2个关键问题是如何处理的?

(每个人的心得体会不得少于300字,必须是原创的,不能空话,套话)。

2、需提交资料

每人需提交电子版《实训项目设计报告》1份,实训项目设计报告名称为“学号姓名《我的租房网设计与实现》实训报告.doc”。

每人提交源文件压缩包1份:

包括数据库文件及相应的T-SQL文件,,源文件名称为“学号姓名《我的租房网设计与实现》源文件”。

由各班班长收集完毕,发送到任课老师的QQ邮箱。

四、实训项目设计报告排版、装订格式要求

1、论文页面设置及装订格式

Ø一律A4纸打印

Ø页边距:

上(2.5cm)下(2.5cm)左(2.7cm)右(2.7cm)

Ø行间距:

1.5倍间距

Ø段前:

0.5行

Ø一律左侧打印

2、论文字体字号

Ø正文:

宋体小四

Ø表题、图题:

宋体五号

Ø代码部分参照讲义的格式,如下所示:

//设置红色滚动条的上限值和下限值

hsbRed.Minimum=0;

hsbRed.Maximum=255;

//设置红色滚动条小距离移动滚动框时改变的值(单击左右箭头)

hsbRed.SmallChange=2;

//设置红色滚动条长距离移动滚动框时改变的值(在滚动区域单击时)

hsbRed.LargeChange=10;

hsbBlue.Minimum=0;

hsbBlue.Maximum=255;

hsbBlue.SmallChange=2;

hsbBlue.LargeChange=10;

 

《数据库技术与开发》

项目实训设计报告

 

项目名称:

我的租房网设计与实现

姓名:

专业:

指导教师:

完成日期:

 

进一步思考:

1、哪些地方会用到触发器?

这个题目不太好想,但是银行取款时,交易记录表加消息,银行卡表的余额也会发生改变

2、哪些地方可能用到事物?

使用事物批量插入

3、哪些地方可能用到游标?

4、哪些地方可能用到存储过程?

比如查询指定客户发布的出租房屋的信息,可以用存储过程实现,以用户姓名为输入

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2