第1章 管理信息系统概述/ 1
1.1 信息、管理、管理信息与系统 1
1.1.1 信息与数据 1
1.1.2 管理与管理信息 3
1.1.3 系统 3
1.2 信息系统 4
1.2.1 信息系统的概念 4
1.2.2 信息系统的类型 5
1.2.3 信息系统与管理 5
1.3 管理信息系统 5
1.3.1 管理信息系统的概念 5
1.3.2 管理信息系统的功能 6
1.3.3 管理信息系统的特征 6
1.3.4 管理信息系统的类型 7<p> <span style="font-family: 宋体;"> 第</span>1<span style="font-family: 宋体;">章 管理信息系统概述</span><span style="font-family: Calibri;">/ 1</span></p> <p><span style="font-family: 宋体;"> </span>1.1 <span style="font-family: 宋体;">信息、管理、管理信息与系统</span> 1</p> <p> 1.1.1 <span style="font-family: 宋体;">信息与数据</span> 1</p> <p> 1.1.2 <span style="font-family: 宋体;">管理与管理信息</span> 3</p> <p> 1.1.3 <span style="font-family: 宋体;">系统</span> 3</p> <p><span style="font-family: 宋体;"> </span>1.2 <span style="font-family: 宋体;">信息系统</span> 4</p> <p> 1.2.1 <span style="font-family: 宋体;">信息系统的概念</span> 4</p> <p> 1.2.2 <span style="font-family: 宋体;">信息系统的类型</span> 5</p> <p> 1.2.3 <span style="font-family: 宋体;">信息系统与管理</span> 5</p> <p><span style="font-family: 宋体;"> </span>1.3 <span style="font-family: 宋体;">管理信息系统</span> 5</p> <p> 1.3.1 <span style="font-family: 宋体;">管理信息系统的概念</span> 5</p> <p> 1.3.2 <span style="font-family: 宋体;">管理信息系统的功能</span> 6</p> <p> 1.3.3 <span style="font-family: 宋体;">管理信息系统的特征</span> 6</p> <p> 1.3.4 <span style="font-family: 宋体;">管理信息系统的类型</span> 7</p> <p><span style="font-family: 宋体;"> </span>1.4 <span style="font-family: 宋体;">���理信息系统的技术基础</span> 7</p> <p> 1.4.1 <span style="font-family: 宋体;">数据处理技术</span> 8</p> <p> 1.4.2 <span style="font-family: 宋体;">数据库技术</span> 8</p> <p> 1.4.3 <span style="font-family: 宋体;">计算机网络技术</span> 9</p> <p><span style="font-family: 宋体;"> </span>1.5 <span style="font-family: 宋体;">管理信息系统的开发原则、策略和方法</span> 9</p> <p> 1.5.1 <span style="font-family: 宋体;">管理信息系统开发原则</span> 9</p> <p> 1.5.2 <span style="font-family: 宋体;">管理信息系统的开发策略</span> 9</p> <p> 1.5.3 <span style="font-family: 宋体;">管理信息系统的开发方法</span> 10</p> <p><span style="font-family: 宋体;"> </span>1.6 <span style="font-family: 宋体;">管理信息系统的典型案例</span> 12</p> <p> 1.6.1 MIS<span style="font-family: 宋体;">支持沃尔玛创造商业奇迹</span> 12</p> <p> 1.6.2 <span style="font-family: 宋体;">海尔集团:信息化助力创造世界**公司</span> 12</p> <p> 本章小结 13</p> <p> 本章习题 13</p> <p><span style="font-family: 宋体;"> 第</span>2<span style="font-family: 宋体;">章 数据库**编程</span><span style="font-family: Calibri;">??/ 15</span></p> <p><span style="font-family: 宋体;"> </span>2.1 SQL Server<span style="font-family: 宋体;">相关配置</span> 15</p> <p>2.2 <span style="font-family: 宋体;">使用</span><span style="font-family: Calibri;">ADO.NET</span><span style="font-family: 宋体;">访问数据库</span> 20</p> <p>2.2.1 <span style="font-family: 宋体;">连接数据库</span> 20</p> <p>2.2.2 <span style="font-family: 宋体;">对数据库进行添加、修改及删除操作</span> 22</p> <p>2.2.3 <span style="font-family: 宋体;">查询数据库中的数据</span> 24</p> <p>2.2.4 <span style="font-family: 宋体;">数据绑定控件</span> 27</p> <p>2.3 Entity Framework<span style="font-family: 宋体;">基础知识</span> 51</p> <p>2.3.1 <span style="font-family: 宋体;">从委托到</span><span style="font-family: Calibri;">Lambda</span> 52</p> <p>2.3.2 Entity Framework <span style="font-family: 宋体;">架构</span> 60</p> <p>2.4 <span style="font-family: 宋体;">使用</span><span style="font-family: Calibri;">Entity Framework</span><span style="font-family: 宋体;">访问数据库</span> 61</p> <p>2.4.1 Entity Framework<span style="font-family: 宋体;">的安装</span> 61</p> <p>2.4.2 <span style="font-family: 宋体;">创建数据库及实体对象模型</span> 61</p> <p>2.4.3 <span style="font-family: 宋体;">数据库增、删、改、查操作</span> 65</p> <p>本章小结 71</p> <p>本章习题 71</p> <p><span style="font-family: 宋体;">第</span>3<span style="font-family: 宋体;">章 系统架构</span><span style="font-family: Calibri;">??/ 72</span></p> <p>3.1 <span style="font-family: 宋体;">三层架构简介</span> 72</p> <p>3.2 <span style="font-family: 宋体;">简单三层架构</span> 74</p> <p>3.2.1 <span style="font-family: 宋体;">数据访问层</span> 74</p> <p>3.2.2 <span style="font-family: 宋体;">数据访问通用类库</span> 83</p> <p>3.2.3 <span style="font-family: 宋体;">实体类库</span> 87</p> <p>3.2.4 <span style="font-family: 宋体;">业务逻辑层</span> 91</p> <p>3.2.5 <span style="font-family: 宋体;">表示层</span> 94</p> <p>3.3 <span style="font-family: 宋体;">工厂模式三层架构</span> 108</p> <p>3.3.1 <span style="font-family: 宋体;">接口类库设计</span> 110</p> <p>3.3.2 <span style="font-family: 宋体;">工厂类库设计</span> 112</p> <p>3.3.3 <span style="font-family: 宋体;">其他层的代码修改</span> 113</p> <p>本章小结 115</p> <p>本章习题 115</p> <p><span style="font-family: 宋体;">第</span>4<span style="font-family: 宋体;">章 </span><span style="font-family: Calibri;">RDLC</span><span style="font-family: 宋体;">报表</span><span style="font-family: Calibri;">??/ 116</span></p> <p>4.1 RDLC<span style="font-family: 宋体;">报表简介</span> 116</p> <p>4.2 <span style="font-family: 宋体;">制作</span><span style="font-family: Calibri;">RDLC</span><span style="font-family: 宋体;">报表</span> 118</p> <p>4.2.1 <span style="font-family: 宋体;">制作简单</span><span style="font-family: Calibri;">RDLC</span><span style="font-family: 宋体;">报表</span> 118</p> <p>4.2.2 <span style="font-family: 宋体;">排序</span> 122</p> <p>4.2.3 <span style="font-family: 宋体;">公式与函数</span> 123</p> <p>4.2.4 <span style="font-family: 宋体;">分组</span> 123</p> <p>4.2.5 <span style="font-family: 宋体;">制作图表</span> 124</p> <p>4.2.6 <span style="font-family: 宋体;">设置报表标题</span> 126</p> <p>4.2.7 <span style="font-family: 宋体;">制作动态报表</span> 127</p> <p>本章小结 130</p> <p>本章习题 130</p> <p><span style="font-family: 宋体;">第</span>5<span style="font-family: 宋体;">章 建模工具</span><span style="font-family: Calibri;">PowerDesigner??/ 131</span></p> <p>5.1 PowerDesigner<span style="font-family: 宋体;">简介</span> 131</p> <p>5.2 <span style="font-family: 宋体;">从概念数据模型出发设计数据库</span> 133</p> <p>5.2.1 <span style="font-family: 宋体;">问题描述</span> 133</p> <p>5.2.2 <span style="font-family: 宋体;">创建概念数据模型</span> 134</p> <p>5.2.3 <span style="font-family: 宋体;">定义属性的标准检查约束</span> 137</p> <p>5.2.4 <span style="font-family: 宋体;">定义实体的主、次标识符</span> 138</p> <p>5.2.5 <span style="font-family: 宋体;">联系的定义及使用</span> 138</p> <p>5.2.6 CDM<span style="font-family: 宋体;">转换为</span><span style="font-family: Calibri;">PDM</span> 140</p> <p>5.3 <span style="font-family: 宋体;">从物理数据模型出发设计数据库</span> 142</p> <p>5.3.1 <span style="font-family: 宋体;">问题描述</span> 142</p> <p>5.3.2 <span style="font-family: 宋体;">创建物理数据模型</span> 143</p> <p>5.3.3 <span style="font-family: 宋体;">创建表</span> 144</p> <p>5.3.4 <span style="font-family: 宋体;">编辑列</span> 145</p> <p>5.3.5 <span style="font-family: 宋体;">定义引用</span> 146</p> <p>5.3.6 <span style="font-family: 宋体;">创建视图</span> 148</p> <p>5.3.7 <span style="font-family: 宋体;">创建触发器</span> 149</p> <p>5.3.8 <span style="font-family: 宋体;">定义存储过程与函数</span> 150</p> <p>5.3.9 <span style="font-family: 宋体;">生成</span><span style="font-family: Calibri;">SQL</span><span style="font-family: 宋体;">脚本</span> 152</p> <p>5.4 <span style="font-family: 宋体;">反向工程</span> 153</p> <p>本章小结 159</p> <p>本章习题 160</p> <p><span style="font-family: 宋体;">第</span>6<span style="font-family: 宋体;">章 图书管理系统</span><span style="font-family: Calibri;">??/ 161</span></p> <p>6.1 <span style="font-family: 宋体;">项目描述</span> 161</p> <p>6.1.1 <span style="font-family: 宋体;">项目背景</span> 161</p> <p>6.1.2 <span style="font-family: 宋体;">业务描述</span> 161</p> <p>6.1.3 <span style="font-family: 宋体;">用户描述</span> 162</p> <p>6.2 <span style="font-family: 宋体;">系统需求</span> 162</p> <p>6.2.1 <span style="font-family: 宋体;">需求描述</span> 162</p> <p>6.2.2 <span style="font-family: 宋体;">模块设计</span> 163</p> <p>6.2.3 <span style="font-family: 宋体;">数据库设计</span> 164</p> <p>6.3 <span style="font-family: 宋体;">系统实现</span> 167</p> <p>6.3.1 <span style="font-family: 宋体;">技术要点</span> 167</p> <p>6.3.2 <span style="font-family: 宋体;">主要功能模块及界面设计</span> 167</p> <p>6.4 <span style="font-family: 宋体;">程序打包</span> 182</p> <p>本章小结 189</p> <p>本章习题 189</p> <p><span style="font-family: 宋体;">第</span>7<span style="font-family: 宋体;">章 超市商品进销存管理系统</span><span style="font-family: Calibri;">??/ 190</span></p> <p>7.1 <span style="font-family: 宋体;">系统需求</span> 190</p> <p>7.2 <span style="font-family: 宋体;">系统设计</span> 191</p> <p>7.2.1 <span style="font-family: 宋体;">模块设计</span> 191</p> <p>7.2.2 <span style="font-family: 宋体;">数据库设计</span> 191</p> <p>7.3 <span style="font-family: 宋体;">系统实现</span> 192</p> <p>7.3.1 <span style="font-family: 宋体;">实体数据模型</span> 192</p> <p>7.3.2 <span style="font-family: 宋体;">主界面模块</span> 193</p> <p>7.3.3 <span style="font-family: 宋体;">商品管理模块</span> 196</p> <p>7.3.4 <span style="font-family: 宋体;">进货管理模块</span> 201</p> <p>7.3.5 <span style="font-family: 宋体;">销售管理模块</span> 205</p> <p>7.3.6 <span style="font-family: 宋体;">库存统计模块</span> 206</p> <p>7.4 <span style="font-family: 宋体;">技术经验总结</span> 208</p> <p>7.4.1 <span style="font-family: 宋体;">技术总结</span> 208</p> <p>7.4.2 <span style="font-family: 宋体;">经验总结</span> 208</p> <p><span style="font-family: 宋体;">第</span>8<span style="font-family: 宋体;">章 考试系统</span><span style="font-family: Calibri;">??/ 209</span></p> <p>8.1 <span style="font-family: 宋体;">项目概述</span> 209</p> <p>8.2 <span style="font-family: 宋体;">系统需求</span> 209</p> <p>8.2.1 <span style="font-family: 宋体;">业务描述</span> 209</p> <p>8.2.2 <span style="font-family: 宋体;">用户描述</span> 209</p> <p>8.2.3 <span style="font-family: 宋体;">功能分析</span> 210</p> <p>8.3 <span style="font-family: 宋体;">系统分析设计</span> 211</p> <p>8.3.1 <span style="font-family: 宋体;">模块设计</span> 211</p> <p>8.3.2 <span style="font-family: 宋体;">数据库设计</span> 211</p> <p>8.4 <span style="font-family: 宋体;">技术准备</span> 215</p> <p>8.4.1 Excel<span style="font-family: 宋体;">组件使用</span> 215</p> <p>8.4.2 <span style="font-family: 宋体;">数据库的随机排序方法</span> 217</p> <p>8.4.3 API<span style="font-family: 宋体;">的使用</span> 217</p> <p>8.4.4 <span style="font-family: 宋体;">注册表的使用</span> 218</p> <p>8.4.5 <span style="font-family: 宋体;">控件的代码生成法</span> 219</p> <p>8.5 <span style="font-family: 宋体;">实体类库实现</span> 220</p> <p>8.5.1 Student<span style="font-family: 宋体;">类</span> 220</p> <p>8.5.2 TestQuestion<span style="font-family: 宋体;">类</span> 222</p> <p>8.5.3 CreatePaperScheme<span style="font-family: 宋体;">类</span> 224</p> <p>8.5.4 TestPaper<span style="font-family: 宋体;">类</span> 225</p> <p>8.5.5 QuestionTypeScore<span style="font-family: 宋体;">类</span> 225</p> <p>8.5.6 Questions<span style="font-family: 宋体;">类</span> 227</p> <p>8.5.7 StudentAnswer<span style="font-family: 宋体;">类</span> 228</p> <p>8.6 <span style="font-family: 宋体;">数据访问层实现</span> 229</p> <p>8.6.1 DALStudent<span style="font-family: 宋体;">类</span> 229</p> <p>8.6.2 DALTestQuestion<span style="font-family: 宋体;">类</span> 231</p> <p>8.6.3 DALCreatePaperScheme<span style="font-family: 宋体;">类</span> 233</p> <p>8.6.4 DALTestPaper<span style="font-family: 宋体;">类</span> 234</p> <p>8.6.5 DALQuestionTypeScore<span style="font-family: 宋体;">类</span> 234</p> <p>8.6.6 DALQuestions<span style="font-family: 宋体;">类</span> 235</p> <p>8.6.7 DALStudentAnswer<span style="font-family: 宋体;">类</span> 236</p> <p>8.7 <span style="font-family: 宋体;">业务逻辑层实现</span> 239</p> <p>8.7.1 BLLStudent<span style="font-family: 宋体;">类</span> 240</p> <p>8.7.2 BLLTestQuestion<span style="font-family: 宋体;">类</span> 241</p> <p>8.7.3 BLLCreatePaterScheme<span style="font-family: 宋体;">类</span> 242</p> <p>8.7.4 BLLTestPaper<span style="font-family: 宋体;">类</span> 243</p> <p>8.7.5 BLLQuestionTypeScore<span style="font-family: 宋体;">类</span> 243</p> <p>8.7.6 BLLQuestions<span style="font-family: 宋体;">类</span> 244</p> <p>8.7.7 BLLStudentAnswer<span style="font-family: 宋体;">类</span> 246</p> <p>8.8 <span style="font-family: 宋体;">表示层实现</span> 248</p> <p>8.8.1 <span style="font-family: 宋体;">学生信息管理模块——“学生信息管理”窗体</span> 248</p> <p>8.8.2 <span style="font-family: 宋体;">学生信息管理模块——“学生信息编辑”窗体</span> 256</p> <p>8.8.3 <span style="font-family: 宋体;">题库管理模块——“题库管理”窗体</span> 259</p> <p>8.8.4 <span style="font-family: 宋体;">题库管理模块——“题库编辑”窗体</span> 265</p> <p>8.8.5 <span style="font-family: 宋体;">组卷模块</span> 271</p> <p>8.8.6 <span style="font-family: 宋体;">学生端主界面</span> 282</p> <p>8.8.7 <span style="font-family: 宋体;">学生考试模块</span> 285</p> <p>8.9 <span style="font-family: 宋体;">技术经验总结</span> 297</p> <p>8.9.1 <span style="font-family: 宋体;">技术总结</span> 297</p> <p>8.9.2 <span style="font-family: 宋体;">经验总结</span> 297</p> <p><span style="font-family: 宋体;">第</span>9<span style="font-family: 宋体;">章 高校实践课题管理系统</span><span style="font-family: Calibri;">??/ 298</span></p> <p>9.1 <span style="font-family: 宋体;">项目描述</span> 298</p> <p>9.1.1 <span style="font-family: 宋体;">项目背景</span> 298</p> <p>9.1.2 <span style="font-family: 宋体;">业务描述</span> 298</p> <p>9.1.3 <span style="font-family: 宋体;">项目目标</span> 299</p> <p>9.2 <span style="font-family: 宋体;">系统需求</span> 300</p> <p>9.2.1 <span style="font-family: 宋体;">系统主要功能</span> 300</p> <p>9.2.2 <span style="font-family: 宋体;">需求描述</span> 301</p> <p>9.2.3 <span style="font-family: 宋体;">用例分析</span> 308</p> <p>9.2.4 <span style="font-family: 宋体;">用例图</span> 328</p> <p>9.3 <span style="font-family: 宋体;">系统分析设计</span> 330</p> <p>9.3.1 UML<span style="font-family: 宋体;">建模</span> 330</p> <p>9.3.2 <span style="font-family: 宋体;">数据库设计</span> 353</p> <p>9.4 <span style="font-family: 宋体;">实体类库实现</span> 362</p> <p>9.5 <span style="font-family: 宋体;">辅助项目设计</span> 366</p> <p>9.5.1 <span style="font-family: 宋体;">数据库操作类库(</span><span style="font-family: Calibri;">DBUtility</span><span style="font-family: 宋体;">)设计</span> 366</p> <p>9.5.2 <span style="font-family: 宋体;">公共方法类库(</span><span style="font-family: Calibri;">CommonMethods</span><span style="font-family: 宋体;">)设计</span> 371</p> <p>9.6 <span style="font-family: 宋体;">数据访问层实现</span> 374</p> <p>9.6.1 <span style="font-family: 宋体;">数据访问层接口类库(</span><span style="font-family: Calibri;">IDAL</span><span style="font-family: 宋体;">)设计</span> 374</p> <p>9.6.2 <span style="font-family: 宋体;">数据层工厂类库(</span><span style="font-family: Calibri;">DALFactory</span><span style="font-family: 宋体;">)设计</span> 379</p> <p>9.6.3 SQLServer<span style="font-family: 宋体;">数据访问层(</span><span style="font-family: Calibri;">SQLServerDAL</span><span style="font-family: 宋体;">)设计</span> 385</p> <p>9.7 <span style="font-family: 宋体;">业务逻辑层实现</span> 401</p> <p>9.8 <span style="font-family: 宋体;">表示层实现</span> 407</p> <p>9.8.1 <span style="font-family: 宋体;">系统登录</span> 407</p> <p>9.8.2 <span style="font-family: 宋体;">教师个人题库维护</span> 412</p> <p>9.8.3 <span style="font-family: 宋体;">教师课题申报</span> 418</p> <p>9.8.4 <span style="font-family: 宋体;">课题负责人审批课题</span> 423</p> <p>9.8.5 <span style="font-family: 宋体;">学生选报课题</span> 435</p> <p>9.8.6 <span style="font-family: 宋体;">教师确认选报组</span> 453</p> <p>9.9 <span style="font-family: 宋体;">系统测试</span> 460</p> <p>9.9.1 <span style="font-family: 宋体;">课题操作测**例</span> 460</p> <p>9.9.2 <span style="font-family: 宋体;">查询统计测**例</span> 472</p> <p>9.10 <span style="font-family: 宋体;">技术经验总结</span> 475</p> <p>9.10.1 <span style="font-family: 宋体;">技术总结</span> 475</p> <p>9.10.2 <span style="font-family: 宋体;">经验总结</span> 475</p> <p><span style="font-family: 宋体;">参考文献</span>??/ 477</p> <p> </p> <p>VIII</p> <p><span style="font-family: 宋体;">基于</span>C#<span style="font-family: 宋体;">的管理信息系统开发(第</span><span style="font-family: Calibri;">2</span><span style="font-family: 宋体;">版)</span></p> <p> </p> <p>VII</p> <p>目录</p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p>显示全部信息前 言<br /> 本书第1版自2014年出版以来,先后多次印刷,深受广大读者的欢迎,被多所高等学校选为教材,并获得2015年度河南省教育科学研究**成果二等奖(豫教〔2015〕04744号)、2015年度河南省信息技术教育**成果二等奖(豫教〔2015〕10366号)。在使用过程中,也有不少教师和读者提出了一些很好的意见与建议,为适应技术发展,结合教学实践、读者意见和建议,我们对本教材进行了修订,推出第2版。本次修订保持了第1版的写作风格和特色,侧重MIS系统开发,采用实用案例,坚持“实际应用需求引入→技术要点分析→关键代码剖析→技术经验总结”的学习路线,突出应用性和实践性。 本版修订的主要内容有: (1)升级开发环境与工具。开发环境由第1版的Visual Studio .NET 2010升级为Visual Studio .NET 2012,数据库采用SQL Server 2012,所有案例都是在Visual Studio .NET 2012下完成。第2章中的数据库访问技术LINQ更新为目前更为流行的EntityFramework,第7章中的数据库操作也相应地改为采用EntityFramework,保持技术先进性。 (2)优化调整了部分章节内容。删减了非主流工具介绍,第4章中删减了Crystal Report报表,第5章中删减了Visual SourceSafe,第9章缩减了部分用例规约及顺序图,为压缩篇幅,缩减了部分非关键案例代码(出版社网站可下载全部代码)。 全书共9章,可分为以下三部分: (1)**部分:第1章,介绍MIS基础知识。 (2)第二部分:第2~5章,主要介绍C#语言的**特性和常用开发设计工具。其中,第2章介绍利用C#进行数据库操作的**特性;第3章介绍常用系统架构;第4章介绍如何创建报表;第5章介绍建模工具PowerDesigner在数据库设计中的应用。 (3)第三部分:第6~9章,为典型的MIS实际案例开发详解。其中,第6章为图书管理系统开发案例;第7章为超市商品进销存管理系统开发案例;第8章为在线考试系统开发案例;第9章为高校实践课题管理系统开发案例。这些实际案例,在解决方案、架构和实现技术上,由浅入深、循序渐进。本书以典型实例为引导,解决实际问题、剖析解决过程、拓展解题思路,读者可结合每章的技术经验总结,快速提高C#应用开发实践能力。 限于篇幅,案例讲解在书中只给出了主要功能的源代码,完整系统的代码和数据库等相关资料可在清华大学出版社网站下载。 本书可作为高等院校计算机软件相关专业C#应用程序开发类课程的教材,也可供软件开发人员参考。相信此次修订后的教材,更适合教师的教学和读者的学习。 本次修订由郭基凤、高亮担任主编,韩玉民、赵冬担任副主编,第1章由韩玉民编著,第2章2.1节、2.2节及第9章由赵冬编著,第2章2.3节、2.4节及第7章由余雨萍编著,第3章由郭基凤编著,第4章和第6章由朱彦松编著,第5章由缑西梅编著,第8章由高亮编著,全书由郭基凤、高亮负责统稿。 本书修订过程中,得到了中原工学院车战斌教授的指导和帮助,本书的出版得到了中原工学院教材建设基金资助,另外也吸取了许多相关专著和文献的优点,在此一并表示感谢。 虽然我们力求**,但限于水平,不当之处在所难免,敬请广大读者不吝赐教。 <br /><br /> 显示全部信息媒体评论评论免费在线读第5章建模工具PowerDesigner 本章将介绍在实际项目开发过程中常用的一款工具软件——Sybase公司的计算机辅助软件工程工具集PowerDesigner,本章中只介绍利用该工具软件设计数据库的方法和操作步骤。5.1 PowerDesigner简介 PowerDesigner是Sybase公司的CASE(Computer Aided(or Assisted)Software Engineering)工具集,使用它可以方便地对管理信息系统进行分析设计,它几乎包括了数据库模型设计的全过程。利用PowerDesigner可以制作数据流程图、概念数据模型(Conceptual Data Model,CDM)、物理数据模型(Physical Data Model,PDM),还可以为数据仓库制作结构模型,也能对团队设计模型进行控制。它可以集成到目前流行的许多集成开发环境中,例如Microsoft Visual Studio、Eclipse等,用来缩短开发时间和使系统设计更优化。 PowerDesigner是能进行数据库设计的强大的软件,是一款开发人员常用的数据库建模工具。使用它可以分别从概念数据模型和物理数据模型两个层次对数据库进行设计。概念数据模型描述的是独立于数据库管理系统(DBMS)的实体定义和实体关系定义;物理数据模型是在概念数据模型的基础上针对目标数据库管理系统的具体化。PowerDesigner还可优化PDM,产生为特定DBMS创建数据库的SQL语句,并可以文件形式存储,以便在其他时刻运行这些SQL语句创建数据库。另外,PowerDesigner 还可根据已存在的数据库反向生成PDM、CDM及创建数据库的SQL脚本。 要做好系统的分析设计工作,需要深厚的项目实践功底。本章的目的是帮助分析设计人员更快熟练掌握PowerDesigner的使用方法,而不是过多讲解分析设计方面的理论。 本章的操作都是在PowerDesigner 16.5下完成的,版本信息如图5-1所示。 首先,对当前的工作空间(Workspace)进行简单介绍。一般将欲构建的目标系统的各种模型、文档及报告放在同一个Workspace中,以便于模型设计与管理。 启动PowerDesigner后将默认打开一个工作空间(Workspace),如图5-2所示。窗体左侧的Browser区域提供当前的Workspace层次结构:根节点为Workspace,Workspace中可以包含模型(Model)、目录(Folder),图表(Diagram)及其他子项,其中模型包括各种系统支持的模型类型。
图5-1 Sybase PowerDesigner版本
图5-2 当前工作空间 Workspace定义了使用PowerDesigner建模时的信息集合。PowerDesigner工作时只能有一个Workspace处于打开状态,要新建Workspace必须先将当前Workspace关闭,操作方式为:右击当前Workspace,在弹出的快捷菜单中选择Close,这样即完成了原Workspace的关闭,同时也自动创建了新的Workspace,只是新Workspace中还没有内容。接下来就可以在其中添加自己想要新建的模型了。 本章首先介绍使用PowerDesigner,从概念数据模型出发设计数据库,以及从物理数据模型出发设计数据库的方法,然后介绍为现有的物理数据模型生成数据库脚本,*后对一个设计**的数据库进行反向工程,以获取其物理数据模型。