期末第9章-数据库应用系统开发.ppt_第1页
期末第9章-数据库应用系统开发.ppt_第2页
期末第9章-数据库应用系统开发.ppt_第3页
期末第9章-数据库应用系统开发.ppt_第4页
期末第9章-数据库应用系统开发.ppt_第5页
已阅读5页,还剩40页未读 继续免费阅读

下载本文档

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

文档简介

数据库技术与应用 Windows数据库应用程序开发 数据库技术与应用 本书目录 1 数据库应用程序开发技术 数据库技术应用程序开发工具数据访问技术软件工程的理念 使用技术 知识点 数据库设计过程 完整性控制 安全性控制 数据库恢复技术 VB Net程序设计 ADO Net 应用程序开发过程 系统分析 需求分析 功能设计 编码 测试等 应用系统的多层结构 数据库 连接 数据适配器 数据集 显式连接方法 用户界面 窗体 数据访问层 表示层 数据层 注意 好的应用程序通常把用户界面与数据访问分开 数据库设计 需求分析概念模式设计 E R图设计逻辑模式设计 将E R图转换为关系模式并作规范化处理物理模式设计 选择RDBMS开发平台创建数据库 数据库设计实例 设某商业集团数据库中有3个实体集 一是 商店 实体集 属性有商店编号 商店名 地址等 二是 商品 实体集 属性有商品号 商品名 规格 单价等 三是 职工 实体集 属性有职工编号 姓名 性别 业绩等 商店与商品间存在 销售 联系 每个商店可销售多种商品 每种商品也可以放在多个商店销售 每个商店每销售一种商品 有月销售量 商店与职工间存在着 聘用 关系 每个商店有许多职工 每个职工只能在一个商店工作 商店聘用职工有聘期和月薪 1 试画出ER图 并在图上注明属性 联系的类型 2 将ER图转换成关系模式集 并指出每个关系模式主键和外键 商店 商店编号 商店名 地址 商品 商品号 商品名 规格 单价 职工 职工编号 姓名 性别 业绩 商店编号 聘期 月薪 销售 商店编号 商品号 月销售量 商品 销售 商店 职工 3NF 完整性控制 完整性控制 保证数据库中的数据和语义的正确性及有效性 采取有效的措施防止导致错误数据的操作 SQLServer2000数据完整性有四种类型 实体完整性域完整性参照完整性 也叫引用完整性 用户自定义完整性 SQL中的CREATETABLE命令 在SQL查询语句中用于定义列或字段一级的完整性约束 一般包括 NOTNULL和NULL约束PRIMARYKEY约束UNIQUE约束FOREIGNKEY约束DEFAULT定义CHECK约束 例 在学生选课数据库中 定义关系模式SC snum cnum score CREATETABLESC snumchar 10 NOTNULLFOREIGNKEY snum REFERENCESstudent snum ONDELETECASCADE cnumchar 10 NOTNULLFOREIGNKEYREFERENCEScourseONDELETECASCADE scoreINTNULLCHECK score 0ANDscore 100 PRIMARYKEY snum cnum 当要修改student表中的snum值时或要修改course表中的cnum值时 先要检查SC中有无元组的snum值或cnum值与之对应 若没有 则系统接受修改操作 否则 系统拒绝此操作 当要删除student表或course表中某个元组时 系统也要检查SC表 若找到相应元组则将它们也随之删除 域完整性控制实例 例 设计关系模式teacher tnum tname ID sex age Join date 要求年龄必须介于18 65之间 ID表示身分证号必须唯一 性别只能是 男 或 女 姓名非空 工号必须是数字字符 进入单位日期缺省状态取系统时间 CREATETABLEteacher tnumVARCHAR 6 NOTNULLCHECK tnumLIKE 0 9 0 9 0 9 0 9 0 9 0 9 tnameVARCHAR 10 NOTNULL IDCHAR 18 UNIQUE sexCHAR 2 CHECK sexIN 男 女 ageINTCHECK ageBETWEEN18 65 Join dateDATETIMEDEFAULTGETDATE PRIMARYKEY tnum 触发器实现完整性控制 例 建立一个DELETE触发器 每当在student表中删除一条记录时 也将在SC表中删除相应的记录 关系模式如下 student snum cname sex age sc snum cnum score CREATETRIGGERstudent deleteONstudentFORDELETEASDECLARE snumASCHAR 10 SELECT snum d snumFROMdeleteddIFNOTEXISTS SELECT FROMscWHEREsnum snum BEGINPRINT 已删除没有选课的学生 COMMITTRANENDELSEBEGINDELETEFROMscWHEREsnum snumPRINT 成功删除 END 数据库的实施 1 根据关系模式创建数据库后 要及时备份 2 项目设计小组的成员在分工调试项目时 要用统一的数据库模式进行各自的设计 数据库中具体的测试数据可以各不相同 3 项目最后连调时 必须用实际的 完整的数据库数据进行测试 以期达到软件测试的最终目的 注意 要善于用存储过程 因为该技术可以提高系统运行效率 数据访问层的设计 ActiveXDataObject ADO NET就是微软提供的最新的数据访问模型 是应用程序与相容数据源的数据访问接口 应用程序可以使用ADO NET连接任意类型的数据源 并检索 处理和更新数据源中的数据 新技术 ADO NETDataSet ADO NETDataSet是ADO NET的断开式结构的核心组件 DataSet的设计目的很明确 为了实现独立于任何数据源的数据访问 因此 它可以用于多种不同的数据源 用于XML数据 或用于管理应用程序本地的数据 DataSet是数据的内存驻留表示形式 无论数据源是什么 它都会提供一致的关系编程模型 DataSet包含一个或多个DataTable对象的集合 这些对象由数据行和数据列以及主键 外键 约束和有关DataTable对象中数据的关系信息组成 NETFramework数据提供程序 NETFramework数据提供程序是ADO NET结构的另一个核心元素 其组件的设计目的相当明确 实现对底层数据源的访问 这些组件包括 Connection Command DataAdapter和DataReader对象 Connection对象提供与数据源的连接 Command对象使您能够访问用于返回数据 修改数据 运行存储过程以及发送或检索参数信息的数据库命令 DataReader从数据源中提供高性能的数据流 最后DataAdapter提供连接DataSet对象和数据源的桥梁 DataAdapter使用Command对象在数据源中执行SQL命令 以便将数据加载到DataSet中 并使对DataSet中数据的更改与数据源保持一致 Connection对象 连接字符串格式 SqlConnectionInitialCatalog mydb DataSource myServer UserID sa password 应用实例 例 求SC中所有选课学生的平均成绩 SC snum cnum score PrivateSubForm1 Load HandlesMyBase LoadDimsqlAsString select fromsc DimmyconnAsNewSqlConnection InitialCatalog 学生选课 Data Source NAONAO IntegratedSecurity SSPI DimadapterAsSqlDataAdapter NewSqlDataAdapter sql myconn Dimsc datasetAsNewData DataSetadapter Fill sc dataset sc DimiAsInteger 0DimsumAsInteger 0Fori 0Tosc dataset Tables sc Rows Count 1sum sum sc dataset Tables sc Rows i Item score Nextsum sum iMsgBox 平均成绩 sum EndSub SqlDataAdapterDataSet PrivateSubForm1 Load HandlesMyBase LoadDimsqlAsString select fromsc DimmyconnAsNewSqlConnection InitialCatalog 学生选课 Data Source NAONAO IntegratedSecurity SSPI DimmycmdAsNewSqlCommand sql myconn Dimreader scAsSqlDataReaderDimiAsInteger 0DimsumAsInteger 0myconn Open reader sc mycmd ExecuteReader DoWhilereader sc Read sum sum reader sc item 2 i i 1Loopreader sc Close myconn Close sum sum iMsgBox 平均成绩 sum EndSub SqlCommandExecuteReaderSqlDataReader SqlCommand ExecuteScalar PrivateSubForm1 Load HandlesMyBase LoadDimsqlAsString selectavg score fromsc DimmyconnAsNewSqlConnection InitialCatalog 学生选课 Data Source NAONAO IntegratedSecurity SSPI DimmycmdAsNewSqlCommand sql myconn DimavgAsInteger 0myconn Open avg mycmd ExecuteScalar myconn Close MsgBox 平均成绩 avg EndSub 数据绑定 数据绑定是绑定技术中使用最频繁 也是最为重要的技术 也可以说是各种 Net开发语言开发数据库应用程序最需要掌握的基本知识之一 数据绑定之所以很重要 是因为在 NetFrameWorkSDK中并没有提供数据库开发的相关组件 即如 DbTextBox DbLabel等用于数据库开发的常用组件在 NetFrameWorkSDK中都没有 而数据绑定技术使得界面上的所有控件访问数据源数据时可以步调一致 1 建立SQLServer客户表与VB net控件之间的数据绑定关系PublicmybindAsBindingManagerBaseMe SqlDataAdapter2 Fill Me DataSet11 客户 mybind Me BindingContext Me DataSet11 客户 2 用四个button实现客户表的数据浏览mybind Position 0 到头mybind Position mybind Position 1 往前翻mybind Position mybind Position 1 往后翻mybind Position mybind Count 1 到尾 3 用五个button实现客户表的更新操作mybind AddNew 插入一条记录mybind RemoveAt mybind Position 删除当前记录mybind EndCurrentEdit 结束当前更新状态mybind CancelCurrentEdit 取消当前编辑修改mybind EndCurrentEdit Me SqlDataAdapter1 Update Me DataSet11 客户 数据表示层的设计 功能的设计界面的布局信息交互 好的应用程序的界面设计是 功能全面 控件布局合理 视觉美观 对用户友好 添加应用程序组件 XPanderControl dll 软件测试 软

温馨提示

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

评论

0/150

提交评论