- 1、本文档共74页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
ado.net数据库访问技术
ado.net数据库访问技术
(1). 首先添加命名空间;
(2). 定义数据库连接字符串:
第一种方法:直接把数据库连接字符串存放在字符串对象中,如上代码所示;
第二种方法web:将数据库连接信息存放在配置文件中,然后通过使用configurationstringsettings类进行调用。来个例子说明一下:
(a). 首先,在配置文件的部分定义数据库连接信息:
(b). 在项目文件中,添加对configuration的引用,在头部添加using 。然后定义数据库连接字符串为:
?
备注:必须添加对程序集的引用,才能解析上述代码中使用的configurationmanager类。
2. 创建数据库连接
1)创建connection对象:
2)打开数据库: (); 一般情况下,当在.net中使用“稀缺”的资源时,如数据库连接、窗口或图形对象,最好确保每个资源在使用完毕后立即关闭。尽管.net的设计人员实现了自动垃圾收集机制,垃圾最终会被回收,但仍需要尽可能早地释放资源,以避免出现资源匮乏的情况。 当编写访问数据库的代码时,因为使连接打开的时间略长于需要的时间,就可能影响其他会话。在极端的情况下,不关闭连接可能会使其他用户无法进入一整组数据表,极大地降低应用程序的性能。主要有两种方式可以确保数据库连接等类似的“稀缺”资源在使用完后立即释放。这两种方式如下: (1)第一种方式:采用try...catch...finally语句块 确保在finally中关闭任何已打开的连接。
在给定的方法中可能会打开许多资源,这样try...catch...finally块的层次有时候不容易看清。还有一种方式可以确保资源的关闭——using语句。 (2)使用using语句块
无论块是如何退出的,using子句都会确保关闭数据库连接。?
?
3. 创建数据库操作命令:
connection对象与数据源建立连接后,使用command对象对数据源执行查询、插入、修改和删除等操作。
(1) 创建sql数据库操作命令: sqlquery查询语句具体规则请详见我的系列文章:【读书笔记】sql server查询语句_邓智容 (2) 创建command对象:
(a). 方法一:
?
(b). 方法二:
备注: 1). sql查询语句若含有c#程序的变量并以字符串形式连接,则应注意数据为非数字的变量应用单引号括起来; 2). 在sql查询语句中使用参数化查询语句的话,譬如:
当需要给该参数赋值时,可以使用command对象建立参数对象,然后再赋值:
?
备注: 在.net framework 中sqlclient增加了addwithvalue(string parametername, object value)方法。该方法简化了调用储存过程的输入参数过程,在运行时对所输入的数据类型进行判断,获取对应的数据库类型。 因此该方法在运行效率上比用 add(string parametername, sqldbtype sqldbtype, int size, string sourcecolumn)方法要低。 在效率要求较高的地方仍然建议使用add()方法,其它场合可以使用addwithvalue()简化代码编写量。
?
4. 执行sqlquery命令:
定义好命令后,就需要执行它。执行的语句有多种方式,这取决于要从命令中返回什么数据。command类提供了下述可执行的命令: (1) executenonquery() —— 执行命令,但不返回任何结果。一般用于update、insert或delete语句中,其中唯一的返回值是受影响的记录个数。但如果调用带有输出参数的存储过程,该方法就有返回值。 (2) executereader() —— 执行命令,返回一个类型化的idatareader。是从数据源中选择某些数据的最简单快捷的方法。 (3) executescalar() —— 执行命令,返回结果集中的第一行第一列的值。
?
5. 对数据库操作完毕后关闭数据库连接:
?
?
三. 离线数据库访问
dataadapter对象主要在connection对象和dataset对象之间执行数据的传输工作,将数据填充到dataset对象中,也可把dataset对象更新后的数据返回到数据源中,也可架构在command对象上,通过commandbuilding对象生成dataadapter的insert、update和delete等sql操作命令。使用dataset和datatable对象访问数据源后,会自动离线,在内存中处理数据,如有修改数据的操作,将自动重新连接数据源,更新数据库。dataset对象、dataadapter对象与数据源之间的关系如
您可能关注的文档
- 7《我不是最弱小的》教学设计之三.doc
- 7《我不是最弱小的》教学设计之二.doc
- 7《春雨》片断赏析之一.doc
- 7《春雨》片断赏析之三.doc
- 7《春雨》片断赏析之二.doc
- 7《棉鞋里的阳光》教学设计之二.doc
- 7《翠鸟》.doc
- 7《沙漠中的绿洲》.doc
- 7《这是我小学的老师》-无须注册,完全免费.doc
- 7《雷电颂》教案.doc
- 2025AACR十大热门靶点推荐和解读报告52页.docx
- 财务部管理报表.xlsx
- 高中物理新人教版选修3-1课件第二章恒定电流第7节闭合电路欧姆定律.ppt
- 第三单元知识梳理(课件)-三年级语文下册单元复习(部编版).pptx
- 俄罗斯知识点训练课件-七年级地理下学期人教版(2024).pptx
- 课外古诗词诵读龟虽寿-八年级语文上学期课内课件(统编版).pptx
- 高三语文二轮复习课件第七部分实用类文本阅读7.2.1.ppt
- 高考物理人教版一轮复习课件第4章第3讲圆周运动.ppt
- 高考英语一轮复习课件53Lifeinthefuture.ppt
- 2025-2030衣柜行业风险投资发展分析及投资融资策略研究报告.docx
最近下载
- 票据管理系统单位端操作手册.pdf VIP
- 2022年湖北医药学院药护学院教师招聘笔试试题及答案解析.docx VIP
- 无人机公司培训宣讲.pptx VIP
- 宝鸡市检察机关招聘聘用制书记员笔试真题2024.docx VIP
- 2024年湖北医药学院药护学院教师招聘考试笔试题库及答案解析.docx VIP
- 2024年社区工作者考试必背1000题题库及参考答案(考试直接用).docx VIP
- 矿山矿产资源储量年度报告编制要求.pdf VIP
- 急性心肌梗死医学检查.ppt VIP
- 2022年湖北医药学院药护学院辅导员招聘考试笔试试题及答案解析.docx VIP
- 2025年湖北医药学院药护学院辅导员招聘考试笔试备考题库及答案解析.docx VIP
文档评论(0)