第14章 数据库与应用程序接口
更新时间:2023-06-03 16:09:01 阅读量: 实用文档 文档下载
- 第14英语推荐度:
- 相关推荐
数据库应用
李政伟
第14章 数据库与应用程序接口 通过前面的学习,我们已掌握了SQL Server 2008的基本技术,具备了在后台对数据库进行管 理的能力,那么,如何在前台以windows应用程 序或网页的形式对后台的数据进行插入、修改、 删除呢?
第14章 数据库与应用程序接口 本章学习任务 开发工具连接SQL Server 2008,实现 数据的查询 数据的插入 数据的修改 数据的删除
基本概念
是微软新一代.NET数据库访问架构,一种具有 可扩展性的数据存取模型。 在中,大量复杂的数据操作代码被封装起来, 提供了一个统一的编程模式和一组公用的类来进行任何类 型的数据访问,而与具体开发语言无关。 介于数据源和数据使用者之间的桥梁。开发人员只需编写 少量代码即可轻易地实现数据库操作。 使用者 数据库
对象模型DataSet .NET 数据提供程序 ConnectionTransaction
DataTableCollectionDataTableDataRowCollection DataColumnCollection ConstraintCollection
DataAdapterSelectCommand InsertCommand UpdateCommand DeleteCommand
CommandParameters
DataReader
DataRelationCollection
XML 数据库5
基础 .NET Data Provider访问数据源的一组类库,为 统一对于各类型数据源的访问方式而设计。可用 来连接数据库,执行命令和获取结果。 可直接处理结果,或放在DataSet中。 5种.NET 数据提供程序 用于SQL Server的数据提供程序 用于OLEDB的数据提供程序 用于ODBC的数据提供程序 用于Oracle的数据提供程序 EntityClient数据提供程序 6
SqlClient VS OleDb
用于 SQL Server的数据提供程序 :使用自己的协议与 SQL Server进行通信。轻量且性能良好,直接访问SQL Server,无需添加 OLE DB 或 ODBC层。 用于 OLE DB的数据提供程序:通过 OLE DB服务组件( 提供连接池和事务服务)和用于数据源的 OLE DB 访问 接口与 OLE DB 数据源进行通信。
基础1. .NET Data Provider 对象名称 Connection Command DataAdapter 功能说明 提供和数据源的连接功能。 访问用于返回数据、修改数据、运行存储过程 以及发送或检索参数信息的数据库命令。 DataSet对象和数据源间的桥梁。使用4个 Command对象来运行查询、新建、修改、删除 的SQL命令,把数据加载到DataSet,或者把 DataSet内的数据送回数据源。 通过Command对象运行SQL查询命令取得数据 流,以便进行高速、只读的数据浏览。8
DataReader
2. DataSet(数据集) ADO .NET离线数据访问模型的核心,在内存中暂 存并处理各种从数据源中所取回的数据。 一个存放在内存中的数据暂存区,这些数据须通过 DataAdapter对象与数据库进行数据交换。
可包括多个DataT
able对象,而DataTable包含列和 行,就象一个普通的数据库中的表。甚至能够定义表 之间的关系来创建主从关系(parent-child relationships)。
趣味理解
访问数据库的两种方式
用Connetction、 Command和DataReader 对象,但只能读取数据 库,不能修改数据。
用Connection、 Command、 DataAdapter和DataSet 对象,更灵活,可对数 据库进行各种操作。11
使用 DataSet 可执行以下操作: 在应用程序中将数据缓存在本地,以便对数据进 行处理。如果只需读取查询结果,则 DataReader 是更好的选择。 在层间或从 XML Web services 对数据进行远程 处理。 与数据进行动态交互,例如绑定到 Windows 窗体 控件或组合并关联来自多个源的数据。 对数据执行大量的处理,而不需要与数据源保持 打开的连接,从而将该连接释放给其他客户端使 用。
数据库的访问流程(1)建立Connection对象,创建一个数据库连接。
(2)使用Command对象对数据库发送查询、新增、修改和删 除等命令。 (3)创建DataAdapter对象,从数据库中取得数据。 (4)创建DataSet对象,将DataAdapter对象填充到DataSet对 象(数据集)中。 (5)如果需要,可以重复操作,一个DataSet对象可以容纳多 个数据集合。 (6)关闭数据库。 (7)在DataSet上进行所需操作。数据集的数据输出到窗体中 或者网页上面,需要设定数据显示控件的数据源为数据集。13
图14-2 的结构图
SqlConnection对象SqlConnection类属性 ConnectionString ConnectionTimeout Database DataSource Provider State SqlConnection类方法 Open Close CreateCommand 说 明 获取或设置用于打开数据库的字符串。 获取在尝试建立连接时终止尝试并生成错误之前所等待 的时间。 获取当前数据库或连接打开后要使用的数据库的名称。 获取数据源的服务器名或文件名。 获取在连接字符串的“Provider=”子句中指定的SQL提 供程序的名称。 获取连接的当前状态。 说 明
使用 ConnectionString 所指定的属性设置打开数据库连接。 关闭与数据库的连接。这是关闭任何打开连接的首选方法。 创建并返回一个与 SqlConnection 关联的SqlCommand 对象。
ChangeDatabase
为打开的SqlConnection 更改当前数据库。
SqlConnection对象2. 建立连接字符串ConnectionString 方法:创建SqlConnection对象,设置ConnectionString属性。 1)混合模式连接 须提供登录名和登陆口令。string mycon = "server=(local);database=students;uid=cumt;pwd=cumt";
2)windows模式连接string myconn="server=(local);database=students; Integrated Security=true";
连接ACCESSstring mycon = “provider=Microsfot.Jet.OLEDB.4.0;Data Source=“+Server.MapPath(“~App_Code/Text.mdb";
【例14.1】 设计
一个说明直接建立连接字符串的连接过 程的网页WebForm14-1.aspx。 设计步骤: (1)添加一个名称为WebForm14-1的空网页。 (2)设计界面如下图所示,其中包含一个Button控件 Button1和一个标签Label1。
18
【例14.1】 设计一个说明直接建立连接字符串的连接过 程的网页WebForm14-1.aspx。 protected void Button1_Click(object sender, EventArgs e) { string mystr; SqlConnection myconn = new SqlConnection(); mystr = "Data Source=localhost;Initial Catalog=student; " + " Integrated Security=False;User Id=sa; Password=123456"; myconn.ConnectionString = mystr; myconn.Open(); if (myconn.State == ConnectionState.Open) Label1.Text = "成功连接到SQL Server数据库(lzw)"; else Label1.Text = "不能连接到SQL Server数据库(lzw)"; myconn.Close(); }
19
3. 将连接字符串放在Web.config文件中多在Web.config中保存连接字符串,再通过对文件加密, 从而达到保护连接字符串的目的。 例14.2,在<configuration>节中插入以下代码: <connectionStrings> <remove name="myconn" /> <add name="myconn" connectionString="server=.;database=student;uid=cumt;p wd=cumt"/> </connectionStrings> string mystr = ConfigurationManager.ConnectionStrings["myconn"].ToS tring(); SqlConnection myconn = new SqlConnection(); myconn.ConnectionString = mystr; myconn.Open(); 20
3. 将连接字符串放在Web.config文件中也可在Web.config文件的<configuration>节中插入代码: <appSettings> <add key="myconnstring" value=“Server=(local); Database=Student; Integrated Security=False;User Id=sa;Password=123456;" /> </appSettings> string mystr = ConfigurationManager.AppSettings[" myconnstring"]; SqlConnection conn = new SqlConnection(); conn.ConnectionString = mystr; conn.Open();21
SqlCommand 对象
建立连接后,即可执行操作。一般对数据库的操作被概括 为CRUD—Create、Read、Update和Delete。 1. SqlCommand 类的属性和方法说 明
SqlCommand 类 属性CommandText
获取/设置要对数据源执行的 T-SQL 语句或存储过程。
CommandTimeout 获取/设置在终止执行命令的尝试并生成错误前的等待时间。CommandType 获取或设置一个值,指示如何解释CommandText属性。
ConnectionParameters
数据命令对象所使用的连接对象参数集合(SqlParameterCollection)
22
正在阅读:
第14章 数据库与应用程序接口06-03
目标管理考评汇报材料07-28
剑桥国际少儿英语二级1-4单元教案07-24
Unit 4 Cultural Encounters课文翻译综合教程二08-27
依恋理论研究综述01-14
开卷未必有益作文350字07-10
2009大专A班数学分析第十二章反常积分自测题解答03-07
- 教学能力大赛决赛获奖-教学实施报告-(完整图文版)
- 互联网+数据中心行业分析报告
- 2017上海杨浦区高三一模数学试题及答案
- 招商部差旅接待管理制度(4-25)
- 学生游玩安全注意事项
- 学生信息管理系统(文档模板供参考)
- 叉车门架有限元分析及系统设计
- 2014帮助残疾人志愿者服务情况记录
- 叶绿体中色素的提取和分离实验
- 中国食物成分表2020年最新权威完整改进版
- 推动国土资源领域生态文明建设
- 给水管道冲洗和消毒记录
- 计算机软件专业自我评价
- 高中数学必修1-5知识点归纳
- 2018-2022年中国第五代移动通信技术(5G)产业深度分析及发展前景研究报告发展趋势(目录)
- 生产车间巡查制度
- 2018版中国光热发电行业深度研究报告目录
- (通用)2019年中考数学总复习 第一章 第四节 数的开方与二次根式课件
- 2017_2018学年高中语文第二单元第4课说数课件粤教版
- 上市新药Lumateperone(卢美哌隆)合成检索总结报告
- 应用程序
- 接口
- 数据库
- 电工原理(i)第二次作业答案
- 浅谈目前商品混凝土存在的问题
- 大连外国语大学新校区规划设计实践浅析
- 第09节_飞机设计_起落架设计_475504411
- NoobyProtect SE1.7.0.0 脱壳之找OEP
- 浅析无效民事行为的法律后果
- 2013美国动作惊悚]
- 校本课程__天文观测 第2课时 教案(人教版新课标八年级上册)
- 护理质量管理与持续改进
- 管道蒸汽吹扫方案
- 基于MATLAB的阵列信号处理仿真方法
- 教育培训行业营销策略
- 人教版初中英语七年级下册Unit1SectionB精讲精练
- 捞渣机计算书模板
- 复化两点Gauss-Legendre公式及其误差分析
- 供电局2011年生产管理及技能人员安全知识模拟考试I(配电B卷)
- 调节阀流量特性分析及应用选型
- 常用医学检验技术期末试题
- 新人教版八年级数学下16.1.1_从分数到分式_
- 开发和运用乡土资源在科学活动中培养幼儿良好习惯的实践研究