




已阅读5页,还剩24页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 本系统的主要功能是客房信息的管理及对各种信息的查询,增加,修改,更新。本系统的数据库是用sql server 2000软件进行创建与设计,分别包括客房信息,客户信息,职工信息和系统信息四个表。通过系统odbc数据源管理工具把已创建的数据源与系统数据库相连。利用vb软件对系统的窗口进行设计,包括欢迎界面、登陆界面、注册新用户界面、主菜单界面、浏览窗体和查询窗体等,可以通过这些窗体进行登陆操作,对输入的用户信息进行验证,和注册新用户操作,以及最重要的操作是对数据库中信息进行浏览与查询。并可以对数据进行添加与删除,做到及时更新。关键词: 房产信息管理 sql server 2000 vb摘要1第1章 系统功能概述21.1 系统功能21.2 系统结构总图3第2章 数据库设计32.1 需求分析32.2 e-r模型42.3 关系模型62.4 表结构设6第3章 系统各功能模块的详细设计73.1各窗体的设计73.1.1 封面.73.1.2登录83.1.3 主菜单93.1.4 注册新用户窗体.113.1.5 密码找回窗体.12总结28参考文献28第1章 系统功能概述1.1 系统功能(1)房产信息的管理(2)信息增、删、改(3)房产信息查询(4)用户登录系统及密码找回1.2 系统结构总图房产信息管理系统楼盘信息 楼盘信息添加查询删除楼房信息 楼房信息添加查询删除户型信息户型信息添加查询删除系统信息 系统信息添加修改删除第2章 数据库设计2.1 需求分析建立一套功能完善的管理信息系统,既能满足业务人员日常处理的需要,增强企业经营全过程的数字化管理水平;又能满足管理人员决策分析的需要,提高公司管理层对公司经营反馈信息的响应速度。从而大幅度提高工作效率,提高实施管理的准确性、科学性,使担负管理的工作人员从繁杂的手工劳作中解脱出来。因而程序需要实现的功能有如下:1 楼盘信息管理:楼盘信息查询、添加、删除操作。2 楼房信息管理:楼房信息查询、添加、删除操作。3 户型信息管理:户型信息查询、添加、删除操作。4 系 统 管 理 :注册用户信息及密码找回系统。2.2 e-r模型楼盘信息楼盘编号楼盘名称总建筑面积位置楼房信息楼号楼盘编号单价单元号房号楼层户型信息户型编号户型结构建筑面积套内面积楼号户型简介系统信息用户名密码性别员工号密保答案密保提问员工员工员工户型信息楼房信息楼盘信息管理包含包含管理管理1nnnnn11n2.3 关系模型一个实体型转换为一个关系模式。实体的属性就是关系的属性,实体的码就是关系的码。根据e-r图向关系模型转换的原则,把e-r图转换为关系模型。关系的码用下横线标出。(1)楼盘信息(楼盘编号、楼盘名称、位置、总建筑面积)(2)楼房信息(楼号、单元号、楼层、房号、单价、楼盘编号)(3)户型信息(户型编号、户型结构、建筑面积、套内面积、户型简介、楼号)(4)系统信息(用户名、密码、性别、员工号、密保提问、密保答案)2.4 表结构设本系统需在sql server中建立四个表,分别为楼盘信息,楼房信息,户型信息和系统信息(1)楼盘信息表的建立与基本数据:sql 语句如下:create table 楼盘信息(楼盘编号 varchar(50)primary key,楼盘名称varchar(50),位置varchar(50),总建筑面积varchar(50),foreign key (房号)references 客房信息(房号);(2)楼房信息表的建立与基本数据:sql 语句如下:create table 楼房信息(楼号varchar(50)primary key,单元号varchar(50),楼层varchar(50),房号varchar(50),单价varchar(50),);(3) 户型信息表的建立与基本数据:sql 语句如下:create table 户型信息(户型编号varchar(50)primary key,户型结构varchar(50),建筑面积varchar(50),套内面积varchar(50),户型简介varchar(50),);(4) 系统信息表的建立与基本数据:sql语句如下:create table 系统信息(用户名 varchar(50),密码 varchar(50),员工号varchar(50),密保提问varchar(50),密保答案varchar(50),性别varchar(50);第3章 系统各功能模块的详细设计3.1各窗体的设计本房产信息管理系统共包括15个窗体,分别为欢迎界面,登录窗体,用户注册,管理窗体,户型信息,楼盘信息,楼房信息,户型信息添加,楼盘信息添加,楼房信息添加,密码显示,密码找回,密码找回b,用户管理,视图查询,欢迎窗口,其中主窗体为管理窗体。下面介绍各个窗体的设计语句及实现功能。3.1.1 封面封面,如图3.2.1,标题为“房产信息管理系统”,为此标题添加一个timer,编辑代码使其可以定时变色。点击鼠标左键就可以关闭本窗体并打开登录窗体。封面代码如下:private sub timer1_timer() private sub label1_click()static n as integer 登录窗口.show n = n + 1 unload meif n 15 then end sub n = 0end iflabel1.forecolor = qbcolor(n)end sub3.1.2登录将打开“登录”对话框,用户输入用户名和密码,如图3.2.2,若正确则打开下面的主窗体,如图3.2.3。登录代码如下:dim micount as integer 用于记录输入密码次数private sub cmdland_click()dim sqlstr as stringsqlstr = select * from 系统信息 where 用户名= & text1.text & adodc1.recordsource = sqlstradodc1.refreshif adodc1.recordset.bof then 若没找到符合where条件的记录 msgbox 用户名错误,重新输入, vbexclamation, 警告 text1.text = text1.setfocus text1获得焦点else if adodc1.recordset.fields(密码) = text2 then 登录窗口.hide 管理窗体.show else msgbox 密码错误,重新输入 , vbexclamation, 警告text2.text = text2.setfocus end ifend ifmicount = micount + 1if micount = 3 then unload meend subprivate sub cmdcancel_click() private sub cmdzh_click() unload me unload meend sub end subprivate sub form_load() private sub form_unload(cancel as integer) initialize each button color. removebutton cmdland.hwnd setbutton cmdland.hwnd, vbred removebutton cmdcancel.hwnd setbutton cmdcancel.hwnd, vbred end subend subprivate sub 找回_click() private sub 注册_click()密码找回.show 用户注册.showunload me unload meend sub3.1.3 主菜单设计为mdi窗体如图3.2.3,含有主菜单:文件、查询、添加。文件菜单包含以下子菜单及其功能:登录菜单:打开“登录”窗体用户管理:打开“用户管理”窗体退出:回到程序最初状态即回到欢迎界面。查询 包含以下子菜单:视图查询菜单:显示“视图查询”窗体图表查询包含以下子菜单: 楼盘信息查询 菜单:显示“楼盘信息”窗体 户型信息查询 菜单:显示“户型信息”窗体 楼房信息查询 菜单:显示“楼房信息”窗体添加包含以下子菜单: 楼盘信息添加菜单:显示“楼盘信息添加”窗体楼房信息添加菜单:显示“楼房信息添加”窗体户型信息添加菜单:显示“户型信息添加”窗体代码如下:private sub mdiform_load()dim str as stringstr = select * from 系统信息 where 系统信息.用户名 = & trim(登录窗口.text1.text) & adodc1.recordsource = stradodc1.refresh if adodc1.recordset.fields(职权) = 1 then myh.enabled = true else: myh.enabled = falseend ifend subprivate sub mhx_click() private sub mdenglu_click()户型信息.show 登录窗口.showunload me unload meend sub end subprivate sub mlf_click() private sub mlp_click()楼房信息.show 楼盘信息.showunload me unload meend sub end subprivate sub mhxt_click() private sub mlft_click()户型信息.show 楼房信息.showunload me unload meend sub end subprivate sub mlpt_click() private sub mschaxun_click()楼盘信息.show 视图查询.showunload me unload meend sub end subprivate sub mtuichu_click() private sub myh_click()欢迎窗体.show 用户管理.showunload me unload meend sub end sub3.1.4 注册新用户窗体注册新用户窗体用于添加新的用户名和密码。单击“注册新用户”菜单,打开对话框。若输入正确,则将入的用户名保存到“系统信息”表,并提示“注册用户成功”,关闭本窗体,如图3.2.4,图3.2.5。代码如下:private sub 提交_click()dim sqlstr as stringif text1 = then msgbox 请输入用户名!, vbexclamation, 确认用户名 text1.setfocus exit subelse sqlstr = select * from 系统信息 where 用户名= & text1 & adodc1.recordsource = sqlstr adodc1.refreshif adodc1.recordset.eof = false then msgbox 用户名已存在,请重新输入!, vbexclamation, 检验用户名 text1 = text1.setfocus exit sub end ifend ifif text2 text3 then msgbox 二次输入的密码不一致,请重新输入, vbexclamation, 检验密码 text2 = : text3 = text2.setfocus exit subelseif text2 = then msgbox 密码不能为空!, vbexclamation, 检验密码 text2.setfocuselse adodc1.recordset.addnew adodc1.recordset.fields(用户名) = trim(text1) adodc1.recordset.fields(密码) = trim(text2) adodc1.recordset.fields(员工号) = trim(text4) adodc1.recordset.fields(密保提问) = trim(text5) adodc1.recordset.fields(密保答案) = trim(text6) adodc1.recordset.update me.hide msgbox 成功注册新用户!, vbinformation, 添加用户 登录窗口.showend ifend subprivate sub 取消_click()登录窗口.showunload meend sub3.1.5 密码找回窗体密码找回窗体用于用户在密码丢失和遗忘是找回密码。单击“密码找回”菜打开对话框。若输入正确,则将在数据库中查找相应密保提问,并打开“密码找回b”窗体在窗体中现实密保提问如密保答案回答正确提示“密码找回成功”打开“密码现实”窗体显示密码点击“返回”按钮关闭本窗体打开“用户登录”窗体,代码如下:private sub 取消_click()登录窗口.showunload meend subprivate sub 提交_click()dim sqlstr as stringsqlstr = select * from 系统信息 where 用户名= & text1.text & adodc1.recordsource = sqlstradodc1.refreshif adodc1.recordset.bof then 若没找到符合where条件的记录 msgbox 用户名错误,重新输入, vbexclamation, 警告 text1.text = text1.setfocus text1获得焦点else if adodc1.recordset.fields(员工号) = text2 then 密码找回.hide 密码找回b.show else msgbox 员工号错误,重新输入 , vbexclamation, 警告text2.text = text2.setfocus end ifend ifmicount = micount + 1if micount = 3 then unload meend subprivate sub form_load()dim str as stringstr = select * from 系统信息 where 系统信息.用户名 = & trim(密码找回.text1.text) & adodc1.recordsource = stradodc1.refreshend subprivate sub 取消_click()密码找回.showunload meend subprivate sub 提交_click()dim sqlstr as stringsqlstr = select * from 系统信息 where 系统信息.用户名 = & trim(密码找回.text1.text) & adodc1.recordsource = sqlstradodc1.refresh if adodc1.recordset.fields(密保答案) = text6 then 密码显示.show unload me else msgbox 答案输入错误,重新输入 , vbexclamation, 警告text6.text = text6.setfocus end ifmicount = micount + 1if micount = 3 then unload meend subprivate sub form_load()dim str as stringstr = select * from 系统信息 where 系统信息.用户名 = & trim(密码找回.text1.text) & adodc1.recordsource = stradodc1.refreshend subprivate sub 返回_click()登录窗口.showunload meend sub3.1.6视图查询窗体可以在所选信息中进行深入查询,如在datagrid1中点击需要的楼盘数据则在datagrid2中会现实相对应的楼房信息。可以按各种条件查找,且具有模糊查询功能,这些条件放在组合列表框combo中,供用户选择。在文本框中输入要查询的内容如图3.2.6所示,单击查询按钮,查询结果、代码如下:private sub cmd1_click()dim str as stringstr = select * from 楼盘信息str = str & where 楼盘信息. & combo1.text & like & text2 & % adodc1.recordsource = stradodc1.refreshend subprivate sub command2_click()管理窗体.showunload meend subprivate sub form_load()combo1.additem 楼盘编号 combo1.additem 楼盘名称combo1.additem 位置combo1.additem 总建筑面积text2.text = 清空文本框end subprivate sub datagrid1_click()dim sqlstr as stringsqlstr = select * from 楼房信息 where 楼盘编号 = & adodc1.recordset.fields(楼盘编号) & adodc2.recordsource = sqlstr 设置adodc 2连接的记录源adodc2.refreshend subprivate sub datagrid2_click()dim sqlstrb as stringsqlstrb = select * from 户型信息 where 楼号 = & adodc2.recordset.fields(楼号) & adodc3.recordsource = sqlstrb 设置adodc 3连接的记录源adodc3.refreshend sub3.1.7三种图表型信息查询窗体可以按各种条件查找,且具有模糊查询功能,这些条件放在组合列表框combo中,供用户选择。在文本框中输入要查询的内容如图3.2.6所示,单击查询按钮,查询结果、代码如下:private sub cmdback_click() private sub cmdsr_click()管理窗体.show 楼房信息.showunload me unload meend sub end subprivate sub form_load() cmdnext.enabled = true 后移按钮有效text1.locked = true cmdlast.enabled = true 末记录按钮有效text2.locked = true cmdfirst.enabled = false 首记录按钮无效text3.locked = true cmdpre.enabled = false 前移按钮无效text4.locked = truecombo1.additem 楼盘编号 combo1.additem 楼盘名称combo1.additem 位置combo1.additem 总建筑面积label6.caption = 记录 & adodc1.recordset.absoluteposition & / & adodc1.recordset.recordcountend subprivate sub cmdfirst_click()adodc1.recordset.movefirst 记录指针移到首记录(显示首记录)cmdfirst.enabled = false 让首记录按钮无效cmdpre.enabled = false 让前移按钮无效cmdnext.enabled = true 让后移按钮有效cmdlast.enabled = true 让末记录按钮有效在label6上显示当前记录号/记录总数:label6.caption = 记录 & adodc1.recordset.absoluteposition & / & adodc1.recordset.recordcountend subprivate sub cmdpre_click()adodc1.recordset.moveprevious 记录指针移到前一条记录cmdnext.enabled = truecmdlast.enabled = trueif adodc1.recordset.bof then 如果记录指针移到首记录之前, adodc1.recordset.movefirst 则记录指针移到首记录上 cmdfirst.enabled = false cmdpre.enabled = falseend iflabel6.caption = 记录 & adodc1.recordset.absoluteposition & / & adodc1.recordset.recordcountend subprivate sub cmdnext_click()adodc1.recordset.movenext 记录指针移到下一条记录cmdfirst.enabled = truecmdpre.enabled = trueif adodc1.recordset.eof then 如果记录指针移到了末记录之后 adodc1.recordset.movelast 则记录指针移到末记录上 cmdnext.enabled = false cmdlast.enabled = falseend iflabel6.caption = 记录 & adodc1.recordset.absoluteposition & / & adodc1.recordset.recordcountend subprivate sub cmdlast_click() adodc1.recordset.movelast 移到末记录 cmdfirst.enabled = true cmdpre.enabled = true cmdnext.enabled = false cmdlast.enabled = falselabel6.caption = 记录 & adodc1.recordset.absoluteposition & / & adodc1.recordset.recordcountend subprivate sub cmd1_click()dim str as stringstr = select * from 楼盘信息str = str & where 楼盘信息. & combo1.text & like & text8 & % adodc1.recordsource = stradodc1.refreshprivate sub cmdback_click() private sub cmdsr_click()管理窗体.show 户型信息.showunload me unload meend sub end subprivate sub form_load() cmdnext.enabled = true 后移按钮有效text1.locked = true cmdlast.enabled = true 末记录按钮有效text2.locked = true cmdfirst.enabled = false 首记录按钮无效text3.locked = true cmdpre.enabled = false 前移按钮无效text4.locked = truecombo1.additem 楼号 combo1.additem 单元号combo1.additem 楼层combo1.additem 房号combo1.additem 单价label6.caption = 记录 & adodc1.recordset.absoluteposition & / & adodc1.recordset.recordcountend subprivate sub cmdfirst_click()adodc1.recordset.movefirst 记录指针移到首记录(显示首记录)cmdfirst.enabled = false 让首记录按钮无效cmdpre.enabled = false 让前移按钮无效cmdnext.enabled = true 让后移按钮有效cmdlast.enabled = true 让末记录按钮有效在label6上显示当前记录号/记录总数:label6.caption = 记录 & adodc1.recordset.absoluteposition & / & adodc1.recordset.recordcountend subprivate sub cmdpre_click()adodc1.recordset.moveprevious 记录指针移到前一条记录cmdnext.enabled = truecmdlast.enabled = trueif adodc1.recordset.bof then 如果记录指针移到首记录之前, adodc1.recordset.movefirst 则记录指针移到首记录上 cmdfirst.enabled = false cmdpre.enabled = falseend iflabel6.caption = 记录 & adodc1.recordset.absoluteposition & / & adodc1.recordset.recordcountend subprivate sub cmdnext_click()adodc1.recordset.movenext 记录指针移到下一条记录cmdfirst.enabled = truecmdpre.enabled = trueif adodc1.recordset.eof then 如果记录指针移到了末记录之后 adodc1.recordset.movelast 则记录指针移到末记录上 cmdnext.enabled = false cmdlast.enabled = falseend iflabel6.caption = 记录 & adodc1.recordset.absoluteposition & / & adodc1.recordset.recordcountend subprivate sub cmdlast_click() adodc1.recordset.movelast 移到末记录 cmdfirst.enabled = true cmdpre.enabled = true cmdnext.enabled = false cmdlast.enabled = falselabel6.caption = 记录 & adodc1.recordset.absoluteposition & / & adodc1.recordset.recordcountend subprivate sub cmd1_click()dim str as stringstr = select * from 楼盘信息str = str & where 楼盘信息. & combo1.text & like & text8 & % adodc1.recordsource = stradodc1.refreshprivate sub cmdback_click()管理窗体.showunload meend sub private sub form_load() cmdnext.enabled = true 后移按钮有效text1.locked = true cmdlast.enabled = true 末记录按钮有效text2.locked = true cmdfirst.enabled = false 首记录按钮无效text3.locked = true cmdpre.enabled = false 前移按钮无效text4.locked = truecombo1.additem 户型编号 combo1.additem 户型结构combo1.additem 建筑面积combo1.additem 套内面积combo1.additem 用户简介label6.caption = 记录 & adodc1.recordset.absoluteposition & / & adodc1.recordset.recordcountend subprivate sub cmdfirst_click()adodc1.recordset.movefirst 记录指针移到首记录(显示首记录)cmdfirst.enabled = false 让首记录按钮无效cmdpre.enabled = false 让前移按钮无效cmdnext.enabled = true 让后移按钮有效cmdlast.enabled = true 让末记录按钮有效在label6上显示当前记录号/记录总数:label6.caption = 记录 & adodc1.recordset.absoluteposition & / & adodc1.recordset.recordcountend subprivate sub cmdpre_click()adodc1.recordset.moveprevious 记录指针移到前一条记录cmdnext.enabled = truecmdlast.enabled = trueif adodc1.recordset.bof then 如果记录指针移到首记录之前, adodc1.recordset.movefirst 则记录指针移到首记录上 cmdfirst.enabled = false cmdpre.enabled = falseend iflabel6.caption = 记录 & adodc1.recordset.absoluteposition & / & adodc1.recordset.recordcountend subprivate sub cmdnext_click()adodc1.recordset.movenext 记录指针移到下一条记录cmdfirst.enabled = truecmdpre.enabled = trueif adodc1.recordset.eof then 如果记录指针移到了末记录之后 adodc1.recordset.movelast 则记录指针移到末记录上 cmdnext.enabled = false cmdlast.enabled = falseend iflabel6.caption = 记录 & adodc1.recordset.absoluteposition & / & adodc1.recordset.recordcountend subprivate sub cmdlast_click() adodc1.recordset.movelast 移到末记录 cmdfirst.enabled = true cmdpre.enabled = true cmdnext.enabled = false cmdlast.enabled = falselabel6.caption = 记录 & adodc1.recordset.absoluteposition & / & adodc1.recordset.recordcountend subprivate sub cmd1_click()dim str as stringstr = select * from 楼盘信息str = str & where 楼盘信息. & combo1.text & like & text8 & % adodc1.recordsource = stradodc1.refresh3.1.7三种添加信息窗体 添加信息窗体用于添加楼盘、楼房、户型基本信息并且同时具有删除、修改功能。private sub cmdback_click()管理窗体.showunload meend subprivate sub cmdsr_click()楼房信息.showunload meend subprivate sub cmdtc_click()管理窗体.showunload meend subprivate sub form_load()text1.locked = truetext2.locked = truetext3.locked = truetext4.locked = truecmdfirst.enabled = false 首记录按钮无效cmdpre.enabled = false 前移按钮无效cmdnext.enabled = true 后移按钮有效cmdlast.enabled = true 末记录按钮有效cmdadd.enabled = true 添加按钮有效cmddel.enabled = true 删除按钮有效cmdok.enabled = false 确定按钮无效cmdesc.enabled = false 取消按钮无效label6.caption=记录: & adodc1.recordset.absoluteposition & / & adodc1.recordset.recordcountend subprivate sub cmdfirst_click()adodc1.recordset.movefirst 记录指针移到首记录(显示首记录)cmdfirst.enabled = false 让首记录按钮无效cmdpre.enabled = false 让前移按钮无效cmdnext.enabled = true 让后移按钮有效cmdlast.enabled = true 让末记录按钮有效在label6上显示当前记录号/记录总数:label6.caption=记录: & adodc1.recordset.absoluteposition & / & adodc1.recordset.recordcountend subprivate sub cmdpre_click()adodc1.record
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年度民办学校招生代理合作协议书
- 农村集体所有鱼塘2025年度渔业产业扶贫合作合同
- 二零二五年度健康养生食堂厨师聘用合同
- 二零二五年度土地承包权租赁与反租倒包协议
- 二零二五年度农业科技实习生培养合同
- 2025年度环保技术创新合作协议补充协议
- 二零二五年度事业单位专业技术人员解除聘用合同操作规范及服务合同
- 2025年度绿色社区人居环境整治服务合同
- 2025年度网络安全技术聘用职工劳动合同
- 二零二五年度生物技术研发人才聘用协议
- 第十章可持续发展理论与实践课件
- 电气基础知识培训要点课件
- 洗浴中心转让合同(5篇)
- 外研版小学英语五年级下册课文翻译
- YY-T 1823-2022 心血管植入物 镍钛合金镍离子释放试验方法
- 年产12000吨水合肼(100%)项目环评报告书
- 钻芯法检测混凝土抗压强度原始记录1
- 液压支架与泵站(第二版)课件汇总全书电子教案完整版课件最全幻灯片(最新)
- 分布式光伏电站支架结构及荷载计算书
- DB61∕T 1186-2018 花椒主要病虫害防治技术规范
- DB32T 4013-2021 第三方社会稳定风险评估技术规范
评论
0/150
提交评论