C#房屋出租管理系统的设计与开发(4)

2018-11-27 17:02

2) 房屋信息视图(View_RoomInfo)基于两个表:出租人信息表(Renter)、房屋信息表(RoomInfo)。 构建此视图所用的SQL脚本如下:

SELECT TOP (100) PERCENT dbo.Renter.RenterName,

dbo.Renter.Contact, dbo.Renter.RenterRental, dbo.RoomInfo.RoomID, dbo.RoomInfo.RoomType,

dbo.RoomInfo.Location, dbo.RoomInfo.Floor,

dbo.RoomInfo.RatingNum, dbo.RoomInfo.Area, dbo.RoomInfo.Price, dbo.Renter.ContractID, dbo.RoomInfo.TrueNum,

dbo.RoomInfo.Price - dbo.Renter.RenterRental

AS PlanProfit

FROM dbo.Renter INNER JOIN

dbo.RoomInfo ON dbo.Renter.RenterID = dbo.RoomInfo.RenterID

ORDER BY dbo.RoomInfo.RoomID

C. 存储过程

存储过程数据库中有2个存储过程,分别是添加客户存储过程(Procedure_AddCustomer)和减少客户存储过程(Procedure_MinusCustomer)。 1)

添加客户存储过程(Procedure_AddCustomer)是在指定房屋添加承租客户后更新房屋信息表(RoomInfo)的实住人数(TrueNum)。

添加客户存储过程(Procedure_AddCustomer)的SQL脚本如下: CREATE PROCEDURE [dbo].[Procedure_AddCustomer]

(

@roomID char(4)

)

AS

Update RoomInfo Set TrueNum=TrueNum+1 Where RoomID=@roomID RETURN GO 2)

减少客户存储过程(Procedure_MinusCustomer)是在指定房屋减少承租客户后更新房屋信息表(RoomInfo)的实住人数(TrueNum)。

减少客户存储过程(Procedure_MinusCustomer)的SQL脚本如下:

CREATE PROCEDURE [dbo].[Procedure_MinusCustomer]

(

@roomID char(4)

AS

Update RoomInfo Set TrueNum=TrueNum-1 Where RoomID=@roomID RETURN

)

GO

D. 规则

规则数据库中有3个规则:主要作用是分别限制出租人信息表(Renter)的RenterRental、房屋信息表(RoomInfo)的Price、承租客户表(Customer)的CustomerRental的范围在1在10000之间 USE [RentManage] GO

CREATE RULE [dbo].[Id_chke] AS @id BETWEEN 0 and 10000 GO

E. 触发器

在房屋信息表(RoomInfo)中建立了1个触发器,其主要作用是限制其中的额定人数(RatingNum)少于10,如果大于10,系统将不保存。

CREATE ALTER TRIGGER [dbo].[RoomInfo_insert] ON [dbo].[RoomInfo] FOR INSERT AS DECLARE @Num int SELECT @Num=RatingNum FROM inserted IF @Num>10 BEGIN

raiserror('',16,1) rollback transaction

END

F. 约束

在房屋信息表(RoomInfo)中建立了1个约束,其主要作用是限制其中的实住人数(TrueNum)的输入少于额定人数(RatingNum)。

G. 安全性

在后台数据库中,新建了一个登录名chp,在属性中限定了一些权限,在前台也有所显示,其登录名是为客户专门建立的,保证系统的安全性。

在前台连接数据库时,为管理员登录时,使用SA用户登录,密码为12345,赋予其最高权限,当为用户登录时,使用Chp用户登录,密码为314159。以下为前台连接数据库的部分代码。 public static string connection { get {

if (RentManage.登录.entry.Trim() == \管理员\ {

return\source=(local);user id=sa;password=12345;initial

catalog=RentManage;\

} else {

return\

initial catalog=RentManage;integrated security=SSPI;\

} } }

心得体会与收获

数据库设计开发与总结报告即将完成之际,回想起开始工作的不知所措,以及调研、调试过程中的多次遇阻,真是说不出的艰辛,有时候弄得比较有趣了,都是在熬夜给弄出来的。在开始设计数据库时,真的不知道从何开始,通过一些同学在课堂上讲解他们的系统,并且自己多次与他们和老师交流之后,终于确定了自己的方向,基于C#下设计一个房屋出租系统。在图书馆借了一些C#的教程和C#课程设计案例精编,于是开始模仿者来建立前台。

说真的,C#真的很不好学,很多方面的东西,在短短一个月内要了解他真的很难,于是我下载了一些系统,试着使用VS2008边模仿边学,便实现自己的系统,可是在调试过程中,出现了无数多的错误,有时候解决一个错误都得花上好几个小时。幸好,有许多老师、同学的帮助,我才得以调试成功,一次次的改进自己的程序,实现各种功能。正是在这些朋友的帮助下,我才及时纠正了自己的语法错误、逻辑错误、攻克了不少难点。

在此,我首先感谢我的安剑奇老师。是他给了我们这次自学的机会,使我自学了C#并且完成了自己的系统,而且安老师在这个过程中还不断给我们建议,像我们提一些要求,虽然有时候觉得很困难,但是自己也是咬牙给撑下来了,硬是给完成了。

此外,我也要感谢那些给予我信心、帮助的同学、朋友,特别是那几位会C#的好心朋友,虽然以前并不认识你们,只是在要做系统的时候请你们帮忙,你们也二话没说就来帮我调试系统,帮我改正错误,提出合理化的建议,增强程序的功能,并且细心的给我讲解,一次一弄就是好几个小时。在这里我要衷心的谢谢你们,谢谢你们这次系统设计中对我的帮助和关怀。

在此次系统的设计中真的学到了很多东西。

1.首先就是持之以恒的那种精神,每次遇到自己很头痛的问题时,都有点想放弃的感觉。通过不断问同学,百度,百度上很多东西也非常有用,自己逐渐来解决; 2.然后就是自己也算是入门了一个软件了吧,知道VS2008怎么用了,也会用C#语言来开发简单的界面和系统;

3.对数据库更加的了解了,自己学会了建立约束、规则、触发器、视图、存储过程、数据库的安全性的处理。知道怎样来实现数据库的完整性和安全性。


C#房屋出租管理系统的设计与开发(4).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:管理学案例-这是谁的错

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: