数据库课设房屋出租管理系统制作_第1页
数据库课设房屋出租管理系统制作_第2页
数据库课设房屋出租管理系统制作_第3页
数据库课设房屋出租管理系统制作_第4页
数据库课设房屋出租管理系统制作_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 成 绩 评 定 表学生姓名陈 敏班级学号08专 业电子信息科学与技术课程设计题目房屋出租管理系统评语组长签字:成绩日期 2015 年 1 月 9 日16 / 19课程设计任务书学 院信息科学与工程学院专 业电子信息科学与技术学生姓名陈 敏班级学号08课程设计题目房屋出租管理系统实践教学要求与任务:系统功能1 房产管理:实现租房与退房两个功能。2 信息管理:即基本表查询,(1)出租人信息:用于查询和更新出租人详细信息;(2)承租人入住管理:用于实现屋主信息查询及房屋信息条件查询。3 客户详细信息:该模块用于查询客户信息,即视图查询,(1)客户信息(基于三张表):查询租者姓名、房屋类型、价格、承

2、租者ID、房屋ID、入住日期、交租日期、交租金额、出租人租金和实际利润等。(2)房屋信息视图(基于二张表):查询出租人姓名、房屋类型、合同编号、房屋ID、租金、房屋位置、房屋楼层、额定人数、实住人数、面积、价格、连续方式和计划利润等。4 帮助,退出和登录:各自实现相应的功能。数据库的设计包含以下实体及其属性 1(1)boss出租人信息管理:(出租人ID、出租人姓名、联系方式、合同编号pno、出租人租金cash、备注)。在该模块中添加一条新的出租人信息,根据用户的需求完成相应的添加、插入、删除等操作;(2)house房屋信息管理:(房屋ID、出租人ID、房屋类型、房屋位置、房屋楼层、额定人数、实

3、住人数、面积、价格、是否有空调、是否有有线电视、是否有宽带、备注)。界面是显示所有的房屋信息,完成相应的添加、插入、删除等操作;(3)Guest承租者入住管理:(承租者ID、承租者姓名、性别、身份证号、房屋ID、入住时间、交租时间、租金cash、合同编号pno、备注)。完成相应的添加、插入、删除等操作;工作计划与进度安排:第20周算法设计第20周编写程序代码 第20周调试程序 第20周答辩、验收程序指导教师: 2015年 1 月 日专业负责人:2015年 1 月 日学院教学副院长:2015 年 1 月 日目 录一、课程设计的目的和意义1二、需求分析1三、概念结构设计(E-R图)3四、逻辑结构设

4、计4五、数据库实施与维护4六、界面设计与代码5七、课程设计心得与体会15八、参考文献16 房屋出租管理系统一、课程设计的目的和意义数据库课程设计是在学生系统的学习了数据库原理课程后,按照关系型数据库的基本原理,综合运用所学的知识,以小组为单位,设计开发一个小型的数据库管理系统。通过对一个实际问题的分析、设计与实现,将原理与应用相结合,使学生学会如何把书本上学到的知识用于解决实际问题,培养学生的动手能力;另一方面,使学生能深入理解和灵活掌握教学内容。大型数据库课程设计是计算机专业集中实践性教学环节之一,是学习完数据库原理及应用课程后进行的一次全面的综合练习。其目的在于加深对大型数据库课程理论和基

5、本知识的理解,掌握使用数据库进行软件设计的基本方法,提高运用数据库解决实际问题的能力。培养学生正确的设计思想,理论联系实际的工作作风,严肃认真、实事求是的科学态度和勇于探索的创新精神。培养学生综合运用所学知识与生产实践经验,分析和解决工程技术问题的能力。二、需求分析房屋出租管理系统体现在对各种信息的保存、修改和查询和视图的建立。经过仔细分析系统需求之后可知其主要功能,具体功能如下:可以根据表查询出三个表之间属性之间的关系系统总体设计图如图1所示:房屋出租管理系统用户帮助用户退出用户登录 房产管理信息管理出租人信息 退 房 租 房 客户详细信息 承租者入住管理 更新和查询 房屋信息客户信息 出租

6、人信息管理 房屋信息管理 查 询 条件查询 询图1 整体设计图承租人 房屋承租出租人属于租赁1111nnE-R图三、概念结构设计(E-R图)承 租 人 房 屋 出租人出租人ID承租者姓名入住时间付款时间房屋楼层房屋位置房屋类型房屋ID额定人数实住人数面积价格有无空调有无有线电视有无宽带备注承租者ID性别身份证号房屋ID租金合同编号备注出租人ID出租人姓名联系方式合同编号出租人租金备注实体属性图 四、逻辑结构设计将E-R图转换成关系模式:(1)承租者入住管理:(承租者ID、房屋ID、出租人ID 、承租者姓名、性别、身份证号、房屋ID、入住时间、交租时间、租金cash、合同编号、备注) (2)房屋

7、信息管理:(房屋ID、出租人ID、房屋类型、房屋位置、房屋楼层、额定人数、实住人数、面积、价格、是否有空调、是否有有线电视、是否有宽带、备注)(3)出租人信息管理:出租人ID、出租人姓名、联系方式、合同编号pno、出租人租金cash、备注)五、数据库实施与维护建立数据库 打开SQL Server 2008,建立数据库:房屋出租管理系统。 1.建表:(1)在客房系统数据库中,根据关系,添加承租人入住管理Guest表,设置各属性,其中承租者ID为主键,出租人ID和房屋ID为外码,都不允许为空,并在表中输入数据;(2)再添加房屋信息管理house表,设置房屋ID为主键,不允许为空,在表中输入数据;(

8、3)添加出租人信息管理boss表,设置出租人ID为主键,不允许为空,在表中输入数据。2.建立视图(1)建立客户信息视图:基于三张表:出租人信息表、房屋信息表、承租者客户表承(租者姓名、房屋类型、价格、承租者ID、房屋ID、入住日期、交租日期、交租金额、出租人租金和实际利润)(2)房屋信息视图(RoomInfo)基于二张表:出租人信息表、房屋信息表(出租人姓名、房屋类型、合同编号、房屋ID、租金、房屋位置、房屋楼层、额定人数、实住人数、面积、价格、连续方式和计划利润)六、界面设计与代码1.登录界面输入已在数据库中的vip用户或普通用户的用户账号和密码,这里选择vip用户,点击vip登录按钮,如图

9、9所示: 图9提示登录成功,单击确定进入主窗体 主要代码如下:在引用空间添加:using System.Data.SqlClient; private void button2_Click(object sender, EventArgs e) string userName = txtName.Text.Trim(); string password = txtPwd.Text.Trim(); string connString = "Data Source=陈敏SQL;Initial Catalog=Hourse_Renting;Integrated Security=True;

10、Pooling=False" SqlConnection connection = new SqlConnection(connString); /获取用户名和密码匹配的行的数量的SQL语句 string sql = String.Format("select count(*) from User where UserName='0' and Password='1'", userName, password); try connection.Open();/ 打开数据库连接 SqlCommand command = new Sql

11、Command(sql, connection);/创建 Command 对象 int num = (int)command.ExecuteScalar();/执行查询语句,返回匹配的行数 if (num > 0) /如果有匹配的行,则表明用户名和密码正确 MessageBox.Show("欢迎进入房屋出租系统!", "登录成功", MessageBoxButtons.OK, MessageBoxIcon.Information); MainFrm mainForm = new MainFrm();/ 创建主窗体对象 mainForm.Show()

12、;/ 显示窗体 this.Visible = false; / 登录窗体隐藏 else txtPwd.Text = "" MessageBox.Show("您输入的用户名或密码错误!", "登录失败", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); catch (Exception ex) MessageBox.Show(ex.Message, "操作数据库出错!", MessageBoxButtons.OK, MessageBoxIcon.Exclamati

13、on); finally connection.Close();/ 关闭数据库连接 private void btnCancel_Click(object sender, EventArgs e) txtName.Text = "" txtPwd.Text = "" txtName.Focus(); private void button1_Click(object sender, EventArgs e) string userName = txtName.Text.Trim(); string password = txtPwd.Text.Trim(

14、);string connString = "Data Source=陈敏SQL;Initial Catalog=Hourse_Renting;Integrated Security=True;Pooling=False"SqlConnection connection = new SqlConnection(connString);/获取用户名和密码匹配的行的数量的SQL语句string sql = String.Format("select count(*) from vipUser where UserName='0' and Passwor

15、d='1'", userName, password);try connection.Open();/ 打开数据库连接 SqlCommand command = new SqlCommand(sql, connection);/创建 Command 对象 int num = (int)command.ExecuteScalar();/执行查询语句,返回匹配的行数 if (num > 0) /如果有匹配的行,则表明用户名和密码正确 MessageBox.Show("欢迎进入房屋出租系统!", "登录成功", MessageB

16、oxButtons.OK, MessageBoxIcon.Information); ainFrm mainForm = new MainFrm();/ 创建主窗体对象 mainForm.Show();/ 显示窗体 this.Visible = false; / 登录窗体隐藏 else txtPwd.Text = "" MessageBox.Show("您输入的用户名或密码错误!", "登录失败", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); tch (Exception ex

17、) MessageBox.Show(ex.Message, "操作数据库出错!", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); finally connection.Close();/ 关闭数据库连接 2.主界面如图10所示:图10添加代码如下:private void 退出CToolStripMenuItem_Click(object sender, EventArgs e) Application.Exit(); private void 帮助YToolStripMenuItem_Click(object sen

18、der, EventArgs e) About ss = new About(); ss.Show(); tssMsg.Text = ss.Text; /在状态栏中显示操作内容 private void 入住管理ToolStripMenuItem_Click(object sender, EventArgs e) Guest papeer = new Guest(); papeer.Show(); tssMsg.Text = papeer.Text; /在状态栏中显示操作内容 private void 出租人信息管理ToolStripMenuItem_Click(object sender,

19、EventArgs e) roomshow gg = new roomshow (); gg.Show(); tssMsg.Text = gg.Text; /在状态栏中显示操作内容 private void 退房ToolStripMenuItem_Click(object sender, EventArgs e) checkout yc = new checkout(); yc.Show(); tssMsg.Text = yc.Text; /在状态栏中显示操作内容 private void 租房ToolStripMenuItem_Click_1(object sender, EventArgs

20、 e) 租房 aa = new 租房(); aa.Show(); private void 详细视图ToolStripMenuItem_Click_1(object sender, EventArgs e) SVIEW SS = new SVIEW(); SS.Show(); 3.信息管理(1)单击“信息管理”下拉菜单选择“出租人信息”,选择要查找的表出租人信息表(boss)或者房屋信息表(house),以及查询字段(即条件)和内容,按姓名查询或者按房间号查询,弹出对应的窗体,如图11所示图11实现主要代码:private void 房产总表浏览_Load(object sender, Eve

21、ntArgs e) string connString = "Data Source=陈敏SQL;Initial Catalog=Hourse_Renting;Integrated Security=True;Pooling=False" string sql = "SELECT * FROM house,boss where house.bossID=boss.bossID " SqlConnection connection = new SqlConnection(connString); SqlDataAdapter dataAdapter = n

22、ew SqlDataAdapter(sql, connection); DataSet dataSet = new DataSet(); dataAdapter.Fill(dataSet, "Guest"); dgvList.DataSource = dataSet.Tables0; private void btnSelect_Click(object sender, EventArgs e) SqlConnection connection = new SqlConnection(); SqlCommand command = new SqlCommand(); str

23、ing sql = String.Format("SELECT * FROM house WHERE 0='1'", cboKey.Text, txtValue.Text); try connection.Open(); / 打开数据库连接 command.Connection = connection; command.CommandText = sql;/设置 Command 对象要执行的SQL语句 int count = command.ExecuteNonQuery();/ 执行更新命令,返回值为更新的行数 if (count > 0) Mes

24、sageBox.Show("筛选成功", "筛选成功", MessageBoxButtons.OK, MessageBoxIcon.Information); else MessageBox.Show("查询失败", "查询失败", MessageBoxButtons.OK, MessageBoxIcon.Information); catch (Exception ex) MessageBox.Show(ex.Message, "操作数据库出错!", MessageBoxButtons.OK,

25、 MessageBoxIcon.Exclamation); finally connection.Close();/ 关闭数据库连接 private void btnSelect_Click_1(object sender, EventArgs e) string sql1; string connString = "Data Source=陈敏SQL;Initial Catalog=Hourse_Renting;Integrated Security=True;Pooling=False" SqlConnection connection = new SqlConnect

26、ion(connString); string ff = comboBox1.Text.Trim(); if(ff="boss") sql1 = String.Format("SELECT * FROM boss WHERE 0='1'", cboKey.Text , txtValue.Text); else if (ff = "house") sql1 = String.Format("SELECT * FROM house WHERE 0='1'", cboKey.Text, t

27、xtValue.Text); else sql1 ="SELECT * FROM boss " SqlDataAdapter dataAdapter = new SqlDataAdapter(sql1, connection); DataSet dataSet = new DataSet(); dataAdapter.Fill(dataSet, "CustomerInfo"); dgvList.DataSource = dataSet.Tables0; (2)单击单击“信息管理”下拉菜单选择“承租者入住管理”,弹出对应窗体,在该窗体可以更新和显示承租者的

28、信息,如图12所示: 图12实现主要代码:SqlDataAdapter dataAdapter;DataSet dataSet;SqlConnection connection; private void button1_Click(object sender, EventArgs e) string connString = "Data Source=陈敏SQL;Initial Catalog=Hourse_Renting;Integrated Security=True;Pooling=False" connection = new SqlConnection(conn

29、String); string sql = "SELECT * FROM Guest" dataAdapter = new SqlDataAdapter(sql, connection); dataSet = new DataSet(); dataAdapter.Fill(dataSet, "Guest"); dgvGuest.DataSource = dataSet.Tables0; private void button2_Click(object sender, EventArgs e) SqlCommandBuilder bbuilder = n

30、ew SqlCommandBuilder(dataAdapter); dataAdapter.Update(dataSet, "Guest"); (3)单击“客户详细信息”,显示的是已成功出租的客户信息和房屋信息(二者都来源于数据库视图),弹出对应窗体,如图13所示: 图13主要代码如下SqlDataAdapter dataAdapter;DataSet dataSet;private void button1_Click(object sender, EventArgs e) string connString = "Data Source=陈敏SQL;Init

31、ial Catalog=Hourse_Renting;Integrated Security=True;Pooling=False" SqlConnection connection = new SqlConnection(connString); string sql = "SELECT * FROM RoomInfo " dataAdapter = new SqlDataAdapter(sql, connection); dataSet = new DataSet(); dataAdapter.Fill(dataSet, "RoomINfo"

32、;); dgvGuest.DataSource = dataSet.Tables0; private void button6_Click(object sender, EventArgs e) string connString = "Data Source=陈敏SQL;Initial Catalog=Hourse_Renting;Integrated Security=True;Pooling=False" SqlConnection connection = new SqlConnection(connString); string sql1= "SELEC

33、T guestID,gname,house.houseID,Guest.bossID,takein,paytime,cash,price,hsite FROM house,Guest where Guest.houseID=house.houseID" dataAdapter = new SqlDataAdapter(sql1, connection); dataSet = new DataSet(); dataAdapter.Fill(dataSet, "CustomerInfo"); dataGridView1.DataSource = dataSet.Tab

34、les0; 4房产管理(1)单击单击“房产管理”下拉菜单选择“租房”,弹出对应窗体,在该窗体可以申请租房和显示未出租的房屋信息,若房屋不存在,则提示不存在,如图14所示:图14实现主要代码:private void button2_Click(object sender, EventArgs e) string connString = "Data Source=陈敏SQL;Initial Catalog=Hourse_Renting;Integrated Security=True;Pooling=False" SqlConnection connection = new

35、 SqlConnection(connString); string sql = "SELECT * FROM house WHERE house.状态='未租' " SqlDataAdapter dataAdapter = new SqlDataAdapter(sql, connection); DataSet dataSet = new DataSet(); dataAdapter.Fill(dataSet, "RoomInfo"); dgv1.DataSource = dataSet.Tables0; private void bu

36、tton1_Click(object sender, EventArgs e) string connString = "Data Source=陈敏SQL;Initial Catalog=Hourse_Renting;Integrated Security=True;Pooling=False" SqlConnection connection = new SqlConnection(connString); string sql = String.Format("INSERT INTO Guest(guestID,cash,takein,houseID,bos

37、sID)VALUES('0','1','2','3','4')", textBox1.Text ,textBox2.Text , textBox3.Text , textBox4.Text ,textBox5.Text); SqlDataAdapter dataAdapter = new SqlDataAdapter(sql, connection); try connection.Open(); / 打开数据库连接 SqlCommand command=new SqlCommand (); command.Connection = connection; command.CommandText = sql;/设置 Command 对象要执行的SQL语句 int count = command.ExecuteNonQuery();/ 执行更新命令,返回值为更新的行数 if (count > 0) MessageBox.Show("添加成功", "添加成功", MessageBoxButtons.OK, MessageBoxIcon.Infor

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论