• 1. 第一部分: Erwin的介绍 第二部分:数据库应用程序(vc++和sqlserver)
  • 2. Erwin介绍 与以往相比,当前应用程序的开发不断发生变化,各种基于Internet和客户机/服务器 结构以及使用纯Java、C++和诸如Delphi、PowerBuilder之类的可视化开发工具编写的新系统层出不穷。但是,对遍布整个公司的信息进行逻辑设计,以便生成物理数据库,对这种数据库结构设计的需求没有发生变化。
  • 3. Erwin介绍 数据库设计错误将会导致在很长一段时间内不断听到各种抱怨。用户数据库可能只服务一部分用户,或者为整个Internet所调用。因此,选择一个适合的数据库开发工具对公司数据环境进行规范非常重要。
  • 4. Erwin的全称是AllFusion ERwin Data Modeler,是CA公司 AllFusion品牌下的建模套件之一,用于数据库建模。是关系数据库应用开发的优秀CASE (computer Aided Software Engineering)工具。Erwin介绍
  • 5. Erwin介绍 ERwin可以方便地构造实体和联系,表达实体间的各种约束关系,并根据模板创建相应的存储过程、包、触发器、角色等,还可编写相应的PB扩展属性,如编辑样式、显示风格、有效性验证规则等。
  • 6. Erwin介绍 ERwin可以实现将已建好的ER模型到数据库物理设计的转换,即可在多种数据库服务器(如Oracle,Sql Server,mysql等)上自动生成库结构,提高了数据库的开发效率。
  • 7. Visual Basic PowerBuilder Clien t EnvironmentE R w i nDB2 ORACLE SQL Anywhere SQL Server Informix Access Paradox FoxPro Sybase Server EnvironmentERwin在Client/Server 发展环境的角色Erwin介绍
  • 8. Erwin中的实体Erwin中的实体有两种:独立实体和依赖实体。实体被指定作为独立实体,或依赖实体,取决于其键的获得方式。 独立实体由方角盒来指定,独立实体不依赖于模型中任何其它实体来标识。 依赖实体被指定为圆角盒,依赖实体依存于模型中的其它实体。
  • 9. 实体示意图独立实体依赖实体
  • 10. 实体间的三种关系: 1 标识关系(identifying relationship) 2 多对多关系(many- to- many relationship) 3 非标识关系( non-identifying relationship )Erwin中的关系
  • 11. 标识关系: 把实体1中的主键作为实体2中的外键,且作为实体2的主键。
  • 12. 非标识关系: 把实体1中的主键作为实体2中的外键,但不作为实体2的主键。
  • 13. 多对多关系: 用于实体间的多对多联系,很少用到。
  • 14. Erwin的使用
  • 15. ERWIN的安装 双击Erwin安装程序进行安装,完成后用keygen程序产生注册码,填入注册码,此时Erwin即安装成功。
  • 16. Erwin可以设计三种模型logical model physical model logical/physical model
  • 17. 1、如果只做文档,可以选择只建立logical model. 2、如果是做项目,需要同时使用logical model和physical model. 3、physical model是用于生成或者导出脚本的.
  • 18. Erwin逻辑模型的建立主要步骤: 1.建立空的数据模型文件 2.添加实体 3.修改实体名,并为实体加入属性 4.建立实体间的关系 5.产生报表
  • 19. 1. 建立新的数据模型 点击File/New弹出建模窗口如下,可根据具体情况做出相应选择(选的目标数据库最好有驱动)
  • 20. (本页无文本内容)
  • 21. 2 建立各个实体方法1:
  • 22. 方法2 右击entities,然后单击new也可以新建一个实体
  • 23. 3 对实体名称进行修改方法1:单击实体名,按F2键可 以对实体名称进行修改 方法2:右键单击欲进行修改的实体,选择Entity Properties
  • 24. (本页无文本内容)
  • 25. 4 修改实体的属性和类型属性的编辑: 方法1:右键单击所选实体,选择Attributes,在弹出的Attributes窗口中添加,删除或修改属性。 方法2:单击所选实体,按 tab键也可以进行添加,删除或修改操作
  • 26. (本页无文本内容)
  • 27. 4 设置实体的主键方法: 右击所选实体,然后单击key groups,然后选择实体的主键。
  • 28. (本页无文本内容)
  • 29. 5 建好的实体
  • 30. 建立好的实体间的关系
  • 31. 6 产生数据库报表第一步: 单击Tools\Report templates Builder\ Report Builder,弹出窗口如下所示:
  • 32. 选择输出的类型(这里选择html), 单击new弹出窗口:
  • 33. (本页无文本内容)
  • 34. 选择左边的picture,再单击 ,则右边区域出现picture section一项,点击菜单栏上的 则可得到该模型的ER图。
  • 35. (本页无文本内容)
  • 36. (本页无文本内容)
  • 37. 点击logic下的entity,如上操作后,右击entity section\properties,选择欲输出的内容。运行后即可得到一个数据字典。
  • 38. (本页无文本内容)
  • 39. (本页无文本内容)
  • 40. 将ER物理模型导入数据库准备工作: 在sqlserver2000中新建一个数据库test。
  • 41. 将视图切换到physical模型下 连接数据库: 单击database\database connection,弹出下面窗口,进行数据库的连接。
  • 42. (本页无文本内容)
  • 43. 单击tools\forward engineer\schema generate 将弹出下面的窗口,单击generate,即可将物理模型导入数据库.
  • 44. (本页无文本内容)
  • 45. 导入后数据库的结果
  • 46. Erwin结束Erwin的其他用法可参考Help\help topics.. Erwin的详细理论见Erwin的方法论
  • 47. VC++数据库应用实例
  • 48. 准备工作 (假设所用数据库为 test,包含一个表student) ODBC连接: 创建数据源:1 控制面板\管理工具\数据源(ODBC)\选择用户DSN。 2 点击添加\选择SQL SERVER驱动程序\进入sqlserver数据源创建向导。
  • 49. (本页无文本内容)
  • 50. (本页无文本内容)
  • 51. 3 输入数据源名称test(名称可以自己定义),选择服务器(local)(根据具体情况确定自己的sqlserver服务器在运行)。 4 选择 用户输入登录ID和密码的验证方式,输入ID和密码(默认的ID为sa,密码为空)。
  • 52. (本页无文本内容)
  • 53. (本页无文本内容)
  • 54. 5 选择默认数据库为要用的数据库test。 6 测试数据源连接是否成功 。
  • 55. (本页无文本内容)
  • 56. (本页无文本内容)
  • 57. 实例 步骤: 1 单击File\new 创建一MFCAppWizard(exe) 工程,工程名为:student(可以自己定义)。 2 单击确定\选择基于对话框类型\选择完成\ 单击确定,完成工程的创建。
  • 58. (本页无文本内容)
  • 59. (本页无文本内容)
  • 60. 进入对话框的编辑界面,选中上面的三个控件,按delete键将其删除。
  • 61. 删除后的界面
  • 62. 添加三个button控件和一个edit控件。 方法:点击控件菜单上所要选的控件,然后再点击在对话框上欲放的位置,即可完成控件的添加。
  • 63. 修改各控件的名称 方法: 选中欲修改的控件,按回车键,即可进行相应的修改。
  • 64. (本页无文本内容)
  • 65. 编写过程代码 添加: 右击添加按钮\建立类向导(classwizard)
  • 66. 在messages一栏选中BN_CLICKED\单击add Function,确定函数名称\edit code,进入添加功能代码的编辑。
  • 67. 按照同样的方法,实现查询和删除的代码编辑。 另外,给edit控件关联一个变量,右击编辑 控件\建立类向导(classwizard)\选择members variables\add variables\填写变量名。
  • 68. (本页无文本内容)
  • 69. 在stdafx.h文件中加入头文件 afxdb.h
  • 70. 添加功能代码
  • 71. 删除功能代码
  • 72. 查询功能代码
  • 73. 运行后的界面
  • 74. 本案列介绍了创建数据源的方法,并介绍了用VC++制作数据库应用系统的一个基本过程。