vc--物业管理系统论文内容摘要:

它们之间的关系,为后面的逻辑 结构打下基础。 数据库逻辑结构设计 现在需要将上面的数据库概念结构转化为 SQL Server 2020 数据库系统所支持的实际数据模型,也就是数据库的逻辑结构。 物业管理信息系统数据库中各个表格的设计结果如下面表格所示。 每个表格表示在数据库中的一个表。 物业管理系统的数据库名称: 房屋信息表: () 列 名 数据类型 长度 可否为空 房屋代码 Int 5 NOT NULL 户型 Varchar 50 NULL 建筑面积 Varchar 50 NULL 使用面积 Varchar 50 NULL 户室规格 Varchar 50 NULL 住户信息表: () 列 名 数据类型 长度 可否为空 住户代码 Int 5 NOT NULL 户主姓名 Varchar 10 NULL 户主性别 Varchar 2 NULL 身份证号 Varchar 18 NULL 联系电话 Varchar 15 NULL 工作单位 Varchar 50 NULL 原家庭住址 Varchar 50 NULL 因水表、电表、燃气表字段一样,现以 水表为例,结构如下: 水表: () 列 名 数据类型 长度 可否为空 住户代码 Int 5 NOT NULL 户主姓名 Varchar 10 NULL 上月查表日期 Datetime 8 NULL 上月查表值 Float 8 NULL 本月查表日期 Datetime 8 NULL 本月查表值 Float 8 NULL 本月实用量 Float 8 NULL 本月费用 Float 8 NULL 费用标准表: () 列 名 数据类型 长度 可否为空 费用代码 Int 3 NOT NULL 费用名称 Varchar 50 NULL 费用单价 Float 8 NULL 费用单位 Varchar 20 NULL 投诉信息表: () 列 名 数据类型 长度 可否为空 投诉人姓名 Varchar 10 NULL 投诉人电话 Varchar 15 NULL 投诉日期 Datetime 8 NULL 投诉事项 Varchar 200 NULL 处理人姓名 Varchar 10 NULL 处理日期 Datetime 8 NULL 处理结果 Varchar 50 NULL 备 注 Varchar 50 NULL 车 位 表: () 列 名 数据类型 长度 可否为空 车位代码 Int 5 NOT NULL 目前状态 Varchar 10 NULL 车位所属户主 Int 5 NULL 绿 化 表: () 列 名 数据类型 长度 可否为空 区域 编号 Int 3 NOT NULL 区域名称 Varchar 50 NULL 区域类别 Varchar 50 NULL 负 责 人 Varchar 12 NULL 保洁周期 Varchar 50 NULL 要 求 Varchar 50 NULL 备 注 Varchar 50 NULL 保安信息表: () 列 名 数据类型 长度 可否为空 保安证号 Int 5 NOT NULL 姓 名 Varchar 10 NULL 性 别 Varchar 2 NULL 负责区域 Varchar 50 NULL 联系电话 Varchar 20 NULL 管理 员表: () 列 名 数据类型 长度 可否为空 管理员姓名 Varchar 10 NOT NULL 密 码 Varchar 20 NULL 5 系统的详细设计 数据库的连接 本系统用的是 MFC ODBC 数据库访问技术, Visual C++ 的 MFC 类库定义了几个数据库类。 在利用 ODBC 编程时,经常要使用到 CDatabase(数据库类)、CRecordSet(记录集类)和 CReordview(可视记录集类)。  ODBC 数据源的创建 1. 从控 制面板中双击“管理工具”图标,然后在新出现的窗口中双击“数据源( ODBC)”。 在弹出的对话框中选择不同的选项卡来确定建立数据源的类型,如图 51 所示: 图 51 ODBC 数据源管理器 2. 单击图 51 中的“添加”按钮,从弹出的对话框中选择适当的数据源驱动程序,此处我们选择 SQL Server,如图 52 所示: 图 52 添加 ODBC 驱动程序 3. 在接下来的对话框中按照程序提示输入相关参数,如数据源名称和说明,同时根据提示选择数据库。 如图 53 所示: 图 53 数据库设置 “下一步”按钮,所选择的数据源就进入了 ODBC 数据源管理器,当用户再次双击“数据源( ODBC)”就会看到添加的数据源。  连接数据源 在 Visual C++程序中使用刚才建立的数据源之前,还必须建立一个到数据源的连接。 在 MFC中到数据源的连接封装于 CDatabase 类中。 要使用 CDatabase对象,在 ODBC 数据源管理器中数据源必须已经正确配置。 CDatabase m_database。 //声明对象 If (!()) { (_T(“ wygl” ))。 //打开数据源,其中 wygl 为数据库名 }。 数据库操作的准备 数据库对象的处理 由于《阳光小区物业管理系统》是基于对话框开发,而 VC++的特点是每新增加一个对话框资源,就为该对话框创建一个新的类,而面向对象的特点使得传统编程方法中的全局变量已不多用。 为了能够在每个对话框类中都能实现对数据库的访问,在设计程序时,采用的方法是在每一个对话框类中都增加一个成员变量 m_database,用于连接到数据库。 为了程序能支持数据库对象,在头文件 中加入 include。 记录集的处理 由于本系统使用的是 MFC ODBC 方式访问数据库,因此可以使用记录集的映射。 为了编程便捷,可以为数据库中的每一个表映射一个记录集类(从CRecordSet 类继承),这些记录集类已经自动将对应表的列绑定好,方便了以后对记录集的使用。 数据源的表与记录集类的对应关系如下: 数据表 对应记录集 数据表 对应记录集 roon RoomSet gas GasSet custom CustomSet rule RuleSet water WaterSet carroom CarSet electry ElectrySet green GreenSet administrator LoginSet safe SafeSet 系统主界面 由于本系统采用的是基于对话框的开发。 因此应用程序的主对话框(即运行后出现在对话框)就应该是登录窗口。 该窗口的设计在此不再列出,当输入正确的管理员名和相应的密码后,即可进入系统的主操作界面。 系统应用程序的各个不同功能是通过选择管理窗口中的不同按钮来完成的。 每个功能模块由一个或多个对话框实现。 在管理窗口上放置了 9 个按钮控件,其单击事件分别用来打开具有不同模块功能的窗口(对话框)。 其设计如图 54 所示: 图 54 主管理窗口 房屋信息管理模块 的设计 窗口设计 房屋信息管理模块由一个大的窗口组成,在窗口的上半部分是查询条件输入部分,可以按房屋的各项信息进行精确和模糊查询。 当输入了完整的查询信息后,点击查询按钮,查询结果则会在中间部分的 List Control 部分显示; List Control 按件是用来显示数据库表( room)的信息。 下半部分是明细区,当选中某条记录,则该记录的所 有字段都会在明细区对应的显示出来,以便察看,避免了在 List Control 中看错行或显示不完整。 窗口界面如图 55所示: 图 55 房屋信息管理窗口 功能说明 添加:当要添加房屋信息时,按“添加”按钮,则会弹出一个“添加房屋信息”对话框,该对话框上提供了房屋信息的所有字段,当填写完毕后,按“保存”按钮,系统则会自动检测房屋代码是否重复,若有重复则返回,重新填写。 或按“取消”按钮退出添加。 修改:若要对现存的房屋信息进行修改,则先在 List Control 选中要修改的行,再点击修改按钮,这时 弹出一个“修改房屋信息”对话框,选中行的所有数据项都反映到这个窗口,我们对某项进行修改,然后保存即可。 代码实现 查询功能: void CRoom::OnSerch() { UpdateData(TRUE)。 CString m_realfield。 if((房屋代码 )==0) { (房屋代码 )。 (select * from room where %s %s 39。 %s39。 ,m_realfield,m_relation,m_content)。 } if((户型 )==0) { (户型 )。 (select * from room where %s %s 39。 %s39。 ,m_realfield,m_relation,m_content)。 } if((使用面积 )==0) { (使用面积 )。 (select * from room where %s %s 39。 %s39。 ,m_realfield,m_relation,m_content)。 } if((建筑面积 )==0) { (建筑面积 )。 (select * from room w。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。