产品信息管理系统—数据库实现.doc_第1页
产品信息管理系统—数据库实现.doc_第2页
产品信息管理系统—数据库实现.doc_第3页
产品信息管理系统—数据库实现.doc_第4页
产品信息管理系统—数据库实现.doc_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

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

文档简介

产品信息管理系统 数据库实现班级: 姓名: 学号:1 产品信息管理系统的简介 产品信息管理系统是在Visual C+环境下的数据库编程,后台使用Access数据库,在产品信息管理系统界面,可以根据需要进行相应的操作。管理员可以对产品信息进行添加、删除、修改等操作,避免了很多不必要的麻烦,也可以对产品信息进行查询,方便管理。2 数据库访问技术简介 ODBS,即开放数据库互连,它提供了一组标准应用程序编程接口,用户可使用SQL语句实现对数据库管理系统的访问。ODBC应用程序通过ODBC API访问不同数据源的数据,每个不同的数据源都由一个ODBS驱动程序支持。用户可使用ODBC环境中的驱动程序管理器,实现驱动程序与ODBS数据源的连接。这样在使用数据库操作指令时,由ODBS选中的驱动程序提供转换,解释成ODBS环境下的数据库表的具体操作。当用户的应用程序与一个数据源建立连接时,ODBS驱动管理器会为Visual C+数据库程序装入合适的驱动程序。ODBC体系架构如下:应用程序ODBC驱动程序管理器ODBC驱动程序各种关系数据库3 通过ODBC访问数据库 产品信息管理系统DBMSDBODBC驱动程序DBDBMSDBDB驱动程序管理器 图3-1 ODBC访问数据库结构图4 数据库设计Access: (1)第一步:创建一个新的空数据库 打开Microsoft Office Access 2003点击菜单栏中“文件”选择“新建”在右边窗口选择其中的“空数据库”选择保存的地址并为数据库命名。 图4-1 db1数据库 (2)第二步:在空数据库中创建表 在新建的空数据库中选择“表”选择“新建”选择“设计视图”“确定”在字段名称和数据类型中填入相应数据保存。产品信息管理系统所要建立的Access数据库所要的数据以及数据类型如下:ProductID(数字类型,字段大小:长整型)ProductName(文本类型,字段大小:40)SupplierID(数字类型,字段大小:长整型)CategoryID(数字类型,字段大小:长整型)QuantityPerUnit(文本类型,字段大小:20)UnitPrice(货币类型)UnitsInStock(数字类型,字段大小:整型)UnitsOnOrder(数字类型,字段大小:长整型)ReorderLevel(数字类型,字段大小:整型)Discontinued(是/否类型)图4-2 Products设计视图 (3)第三步:在表中填入数据 在建立的数据库“表”中双击选择刚建立的表在表中相应位置填入相应数据(注意数据类型及格式)保存。图4-3 新建Products表 图4-4 写入数据 5 建立ODBC数据源在“开始”中选择“控制面板”“管理工具”“数据源(ODBC)” 在“用户DSN”中选择“添加”选择“Microsoft Access Driver (*.mdb)” 完成在弹出的窗口中选择建立的数据库位置并填入要建立的数据源名称确定。图5-1 创建数据源图5-2 选择数据库图5-3 数据源名称6 客户端应用程开发6.1 产品信息管理系统的功能结构图产品信息管理系统数据维护数据查询系统帮助增加修改保存取消删除第一条上一条下一条最后一条查找记录图6-1 产品信息管理系统功能结构图6.2 用VC+6.0创建有数据库支持的应用程序框架 打开Microsoft Visual C+ 6.0在菜单栏中的“文件”中选择“新建”在弹出的窗口中“文件”中选择“MFC AppWizardexe”填入工程名称:“Products”“确定”在弹出的窗口中选择“单文档”点击“下一步” “查看数据库使用文件支持”选择“数据源”图6-2 新建工程图6-3 选择查看数据库使用文件支持在弹出的窗口中Datasource的“ODBC”选择建立的数据源并在Recordset type中的“Dynaset” “OK”在弹出的窗口中选择数据库名称“OK”“下一步” “完成”。图6-4 选择数据源名称6.3 设计菜单和工具条在Dialog的IDD_PRODUCTS_FORM中使用控件工具栏绘制出下图窗口:图6-5 绘制窗口在Dialog中新建一个名为IDD_PRODUCTS_FIND的窗口并用Controls工具栏绘制出下图窗口:图6-6 绘制查找条件窗口将Menu的IDR_MAINFRAME中的菜单栏如下图如下图所示:图6-6 数据维护图6-7 记录将Toolbar中的IDR_MAINFRAME中的工具栏用右侧系统提供的工具栏设计如下图所示:图6-8 工具栏在创建的菜单栏和工具栏按键中的属性的ID栏中填入相应的ID、标明和提示,如“ID_DATA_ADD”、“增加&A”、“新增一条记录n增加”。6.4 设计CRecordView的模板在ResourceView中,双击Dialog中的IDD_PRODUCTS_FORM,设计模板如图所示: 图6-9 设计模板 6.5 将CRecordView的模板中的控件和数据集字段关联1、在上图面板中点击右键选择“添加类向导”在弹出的窗口中选择Member Variables 下的所需要关联的ID,如“IDC_EDIT_PRODUCTSID”“Add Variables”“member variables name”中选择相对应的ID名称“OK”如下图所示:图6-10 双击ID图6-11 增加成员变量最后完成,点击“确定”,即可将CRecordView的模板中的控件和数据集字段关联6.6 数据浏览功能实现在ProductsView.cpp中添加类向导,写入相应的程序即可实现。(1) 浏览“第一条记录”的实现在ProductsView.cpp中添加类向导:点击右键选择“添加类向导”在弹出的窗口中选择Message Maps点击Objects IDs中的”ID_RECORD_FIRST”双击Messages中的“COMMAND”和“UPDATE_COMMAND_UI”确定图6-12 建立第一条记录类向导在void CProducts2View:OnRecordFirst() 添加程序如下:void CProducts2View:OnRecordFirst() / TODO: Add your command handler code herem_pSet-MoveFirst();UpdateData(false);在void CProducts2View:OnUpdateRecordFirst(CCmdUI* pCmdUI) 添加程序如下:void CProducts2View:OnUpdateRecordFirst(CCmdUI* pCmdUI) / TODO: Add your command update UI handler code herepCmdUI-Enable(!m_addMode & !m_editMode & !(m_pSet-IsBOF();编译后,点击,在出现的界面中,点击菜单栏记录中“第一条记录”或者图标即可查看第一条记录的信息。(2) 浏览“下一条记录”的实现在ProductsView.cpp中添加类向导图6-12 建立下一条记录类向导在void CProducts2View:OnRecordNext()添加程序如下:void CProducts2View:OnRecordNext() / TODO: Add your command handler code hereif (m_pSet-IsEOF()OnRecordLast();return ;m_pSet-MoveNext();UpdateData(false);在void CProducts2View:OnUpdateRecordNext(CCmdUI* pCmdUI)添加程序如下:void CProducts2View:OnUpdateRecordNext(CCmdUI* pCmdUI) / TODO: Add your command update UI handler code herepCmdUI-Enable(!m_addMode & !m_editMode & !(m_pSet-IsEOF();编译后,点击,在出现的界面中,点击菜单栏记录中“下一条记录”或者标即可查看下一条记录的信息。(3) 浏览上一条记录的实现在ProductsView.cpp中添加类向导图6-13 建立上一条记录类向导在void CProducts2View:OnRecordNext() 添加程序如下:void CProducts2View:OnRecordNext() / TODO: Add your command handler code hereif (m_pSet-IsEOF()OnRecordLast();return ;m_pSet-MoveNext();UpdateData(false);在void CProducts2View:OnUpdateRecordPrev(CCmdUI* pCmdUI) 添加程序如下:void CProducts2View:OnUpdateRecordPrev(CCmdUI* pCmdUI) / TODO: Add your command update UI handler code herepCmdUI-Enable(!m_addMode & !m_editMode & !(m_pSet-IsBOF();编译后,点击,在出现的界面中,点击菜单栏记录中“上一条记录”或者图标即可查看上一条记录的信息。(4) 浏览最后一条记录的实现在ProductsView.cpp中添加类向导图6-14 建立上一条记录类向导在void CProducts2View:OnRecordLast() 添加程序如下:void CProducts2View:OnRecordLast() / TODO: Add your command handler code herem_pSet-MoveLast();UpdateData(false);在void CProducts2View:OnUpdateRecordLast(CCmdUI* pCmdUI) 添加程序如下:void CProducts2View:OnUpdateRecordLast(CCmdUI* pCmdUI) / TODO: Add your command update UI handler code herepCmdUI-Enable(!m_addMode & !m_editMode & !(m_pSet-IsEOF();编译后,点击,在出现的界面中,点击菜单栏记录中“最后一条记录”或者图标即可查看最后一条记录的信息。6.7 增加、修改、删除记录功能实现在ProductsView.cpp中建立增加、修改、删除记录功能的类向导图6-15 建立增加、删除、修改类向导分别需要添加的程序如下:void CProducts2View:OnDataAdd() / TODO: Add your command handler code hereif (m_pSet-CanAppend()m_pSet-AddNew();m_addMode = true;UpdateData(false);void CProducts2View:OnDataEdit() / TODO: Add your command handler code hereif (m_pSet-CanAppend()m_pSet-Edit();m_editMode = true;void CProducts2View:OnDataDelete() / TODO: Add your command handler code hereif (MessageBox(真的要删除当前记录吗?,删除提示,MB_YESNO | MB_ICONWARNING) = IDYES)m_pSet-Delete();/OnRecordNext();UpdateData(false);void CProducts2View:OnUpdateDataAdd(CCmdUI* pCmdUI) / TODO: Add your command update UI handler code herepCmdUI-Enable(!m_addMode & ! m_editMode);void CProducts2View:OnUpdateDataEdit(CCmdUI* pCmdUI) / TODO: Add your command update UI handler code herepCmdUI-Enable(!m_addMode & !m_editMode);void CProducts2View:OnUpdateDataDelete(CCmdUI* pCmdUI) / TODO: Add your command update UI handler code herepCmdUI-Enable(!m_addMode & !m_editMode& ! m_pSet-IsBOF() & !m_pSet-IsEOF();点击数据维护中的增加、修改、删除,或者点击图标按钮、就可以进行相应的操作。6.8 记录查找功能实现在customerView.cpp中添加类向导图6-16 增加查找功能的类向导在void CProducts2View:OnRecordFind() 中添加程序如下:void CProducts2View:OnRecordFind() / TODO: Add your command handler code hereCProductsFindDlg findDlg;if (findDlg.DoModal()=IDOK)/m_pSet-Close();CString filterString=ProductName

温馨提示

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

评论

0/150

提交评论