数据库课程设计论文.doc

上传人:仙人指路1688 文档编号:2395804 上传时间:2023-02-17 格式:DOC 页数:28 大小:3.85MB
返回 下载 相关 举报
数据库课程设计论文.doc_第1页
第1页 / 共28页
数据库课程设计论文.doc_第2页
第2页 / 共28页
数据库课程设计论文.doc_第3页
第3页 / 共28页
数据库课程设计论文.doc_第4页
第4页 / 共28页
数据库课程设计论文.doc_第5页
第5页 / 共28页
点击查看更多>>
资源描述

《数据库课程设计论文.doc》由会员分享,可在线阅读,更多相关《数据库课程设计论文.doc(28页珍藏版)》请在三一办公上搜索。

1、摘要 本系统的主要功能是客房信息的管理及对各种信息的查询,增加,修改,更新。本系统的数据库是用SQL server 2000软件进行创建与设计,分别包括客房信息,客户信息,职工信息和系统信息四个表。通过系统ODBC数据源管理工具把已创建的数据源与系统数据库相连。利用VB软件对系统的窗口进行设计,包括欢迎界面、登陆界面、注册新用户界面、主菜单界面、浏览窗体和查询窗体等,可以通过这些窗体进行登陆操作,对输入的用户信息进行验证,和注册新用户操作,以及最重要的操作是对数据库中信息进行浏览与查询。并可以对数据进行添加与删除,做到及时更新。关键词: 房产信息管理 SQL server 2000 VB摘要1

2、第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 系统结构总图房产信息管理系统楼盘信息 楼盘信息添加查询删除楼房信息 楼房信息添加查询删除户型信息户型信息添加查询删除系统信

3、息 系统信息添加修改删除第2章 数据库设计2.1 需求分析建立一套功能完善的管理信息系统,既能满足业务人员日常处理的需要,增强企业经营全过程的数字化管理水平;又能满足管理人员决策分析的需要,提高公司管理层对公司经营反馈信息的响应速度。从而大幅度提高工作效率,提高实施管理的准确性、科学性,使担负管理的工作人员从繁杂的手工劳作中解脱出来。因而程序需要实现的功能有如下:一 楼盘信息管理:楼盘信息查询、添加、删除操作。二 楼房信息管理:楼房信息查询、添加、删除操作。三 户型信息管理:户型信息查询、添加、删除操作。四 系 统 管 理 :注册用户信息及密码找回系统。2.2 E-R模型楼盘信息楼盘编号楼盘名

4、称总建筑面积位置楼房信息楼号楼盘编号单价单元号房号楼层户型信息户型编号户型结构建筑面积套内面积楼号户型简介系统信息用户名密码性别员工号密保答案密保提问员工员工员工户型信息楼房信息楼盘信息管理包含包含管理管理1NNNNN11N2.3 关系模型一个实体型转换为一个关系模式。实体的属性就是关系的属性,实体的码就是关系的码。根据E-R图向关系模型转换的原则,把E-R图转换为关系模型。关系的码用下横线标出。(1)楼盘信息(楼盘编号、楼盘名称、位置、总建筑面积)(2)楼房信息(楼号、单元号、楼层、房号、单价、楼盘编号)(3)户型信息(户型编号、户型结构、建筑面积、套内面积、户型简介、楼号)(4)系统信息(

5、用户名、密码、性别、员工号、密保提问、密保答案)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,

6、单元号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(5

7、0),密保答案varchar(50),性别varchar(50);第3章 系统各功能模块的详细设计3.1各窗体的设计本房产信息管理系统共包括15个窗体,分别为欢迎界面,登录窗体,用户注册,管理窗体,户型信息,楼盘信息,楼房信息,户型信息添加,楼盘信息添加,楼房信息添加,密码显示,密码找回,密码找回B,用户管理,视图查询,欢迎窗口,其中主窗体为管理窗体。下面介绍各个窗体的设计语句及实现功能。3.1.1 封面封面,如图3.2.1,标题为“房产信息管理系统”,为此标题添加一个Timer,编辑代码使其可以定时变色。点击鼠标左键就可以关闭本窗体并打开登录窗体。封面代码如下:Private Sub Tim

8、er1_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 String

9、SQLStr = 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 密码错

10、误,重新输入 , 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 butt

11、on 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,含有主菜单:文件、查询、添加。文件菜单包含以下子菜单及其功能:登录菜单:打开“登录”窗体用

12、户管理:打开“用户管理”窗体退出:回到程序最初状态即回到欢迎界面。查询 包含以下子菜单:视图查询菜单:显示“视图查询”窗体图表查询包含以下子菜单: 楼盘信息查询 菜单:显示“楼盘信息”窗体 户型信息查询 菜单:显示“户型信息”窗体 楼房信息查询 菜单:显示“楼房信息”窗体添加包含以下子菜单: 楼盘信息添加菜单:显示“楼盘信息添加”窗体楼房信息添加菜单:显示“楼房信息添加”窗体户型信息添加菜单:显示“户型信息添加”窗体代码如下:Private Sub MDIForm_Load()Dim str As Stringstr = Select * From 系统信息 Where 系统信息.用户名 =

13、& 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 S

14、ub 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

15、() 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.SetFocu

16、s 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, 检验密码 Text

17、2 = : 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

18、(Text5) Adodc1.Recordset.Fields(密保答案) = Trim(Text6) Adodc1.Recordset.Update Me.Hide MsgBox 成功注册新用户!, vbInformation, 添加用户 登录窗口.ShowEnd IfEnd SubPrivate Sub 取消_Click()登录窗口.ShowUnload MeEnd Sub3.1.5 密码找回窗体密码找回窗体用于用户在密码丢失和遗忘是找回密码。单击“密码找回”菜打开对话框。若输入正确,则将在数据库中查找相应密保提问,并打开“密码找回b”窗体在窗体中现实密保提问如密保答案回答正确提示“密码找

19、回成功”打开“密码现实”窗体显示密码点击“返回”按钮关闭本窗体打开“用户登录”窗体,代码如下: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 用户名错误,重新输入, vbE

20、xclamation, 警告 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 Stri

21、ngstr = 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 = SQ

22、LStrAdodc1.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 系统信息.用户名 =

23、 & 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()D

24、im 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

25、.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 楼号 = &

26、 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

27、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 总建筑

28、面积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 让末记录按钮有效在Label

29、6上显示当前记录号/记录总数: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 则记录指针移

30、到首记录上 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 如果记录指针移

31、到了末记录之后 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 = Tru

32、e 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.

33、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.Enabl

34、ed = 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.

35、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 记录指针移到前一条记录

36、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_Cli

37、ck()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.R

38、ecordCountEnd 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

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

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号