ado.net

殊途同归,ado.net快速实现MySql的CRUD
摘要: 正在学习MySql编程,安装了官方的C#客户端,在自己的机器上写了个demo,将可能常见且容易出现的问题或错误温故知新一遍,写下来以备日后再用。 一、MySql的连接字符串连接字符串无比简单,但是这是必须的。我们需要关心的是,通过.net客户端程序,mysql的连接字符串可以像sql server一样,利用连接池高效管理连接。简单配置如下: <connectionStrings> <add name="MySqlConnString" connectionString="Server =localhost; Database =test; Uid 阅读全文
posted @ 2011-09-13 09:17 JeffWong 阅读(2095) | 评论 (5) 编辑
SqlConnection调用Dispose方法之后还可以在连接池中复用吗?
摘要: 在上一篇中简单讨论了SqlConnection的正确使用方式,顺带浅谈了一下连接池,不小心带出了一个问题:SqlConnection的Close 和Dispose方法执行之后,该连接对象是不是真的放回到池中并且可以复用?今天上午我抽空看了一下SqlConnection的Close和 Dispose的IL代码,看完之后并没有直接打消我的疑惑,反而让我更加不确定。今晚又仔细看了下文中的回复,非常汗颜,感觉自己基础还是不太扎实,同 时又有点小怀疑。这里尤其感谢园友rdlc2和荒原上的军旗的回复,他们的不吝赐教直接给了我启发,今晚又写了一段简单的测试代码: static void Execute()...阅读全文
posted @ 2011-08-10 23:44 JeffWong 阅读(2121) | 评论 (14) 编辑
正确使用SqlConnection对象,兼谈数据库连接池
摘要: 今晚看到上了评论头条的LoveJenny写的为什么要关闭数据库连接,可以不关闭吗?,文章写得简单易懂非常不错,而且代码贴的很到位,下面的讨论也很 激烈(老赵都跑过去留言两次了,我恨)。又查看了两遍原文中的代码,我同意评论中有几位的看法,真正造成多线程并行操作数据库时的连接问题可能是由于对 SqlConnection的不当使用。为什么呢?再来看一下LoveJenny兄弟贴出的一段重要源码: string sqlConnString = @"Data Source=.\SQLEXPRESS; AttachDbFilename=""E:\DB\NORTH...阅读全文
posted @ 2011-08-09 23:32 JeffWong 阅读(5192) | 评论 (38) 编辑
ado.net关于操作数据库的连接字符串整理
摘要: 我们知道现在有多种不同的数据库产品(DBMS),而且每个不同的数据库产品又有多种版本。这对于使用ado.net的开发者而言,有时候写数据库连接字 符串就是一个非常犯迷惑的事情。当然,DBMS总类多或者版本多还不是我们纠结的事情,至少我们可以借助工具如VS自动生成我们需要的连接字符串。真正让 人头痛的是连接串中的属性名,在手动配置的时候,不同的开发者写起连接属性来看上去老是不怎么统一,或者顺序也不一致...幸好有 connectionstrings这样一个好心仁慈的网站帮我们整理归纳好了多种不同数据库的连接字符串。其实,ado.net提供的实用类 System.Data.SqlClient.SqlCon阅读全文
posted @ 2010-11-14 19:16 JeffWong 阅读(506) | 评论 (0) 编辑
通过DataReader获取多个结果集
摘要: 我们知道,ado.net的DataReader提供一种从数据库读取行的只进流的方式。通常情况下,我们都是针对一个结果集进行处理。其实通过 DataReader的NextResult方法,我们可以批处理T-SQL,也就是可以获取处理两个或者多个结果集。下面通过一个简单的示例,来简单说 明一下这个功能。1、数据表我们还是沿用这一篇里的Person表。在Person表里,我们定义了自增长的Id,姓、名、身高和体重,它们对应的字段和 实体里的属性命名是一样的。2、实体类Code highlighting produced by Actipro CodeHighlighter (freeware)http:/阅读全文
posted @ 2010-07-10 16:54 JeffWong 阅读(1728) | 评论 (2) 编辑
ado.net快速上手疑问及解答(完结篇)
摘要: 楼猪上周周末偶而有感而发(也就是ado.net快速上手实践篇(一)和(二) ),想不到收到三位童鞋的邮件,提出了他们的疑问,并指出楼猪在源码中存在的问题。非常感谢他们的细心和认真的态度,在这里抱住鸣谢一下。下面,楼猪就把 童鞋们发现的问题和提出的疑问一并整理,统一回复一下,草草落笔,恐怕还有讹误,请注意甄别。一、代码中的问题1、伪SqlMapper的基类为什么用抽 象类BaseSqlMapper而不用接口?答:楼猪也知道在IBatis下的SqlMapper的基类就是一个接口ISqlMapper,但是楼猪写代 码的时候,发现泛型约束在抽象基类里写一次,在SqlMapper下就不要再写了,而用接口就必须阅读全文
posted @ 2010-05-25 22:09 JeffWong 阅读(1589) | 评论 (3) 编辑
ado.net快速上手实践篇(二)
摘要: 我们接着上文继续完成我们的ado.net简单实践。五、dal层数据访问实现在这里我们使用前一篇文章里实现的数据持久化层和伪SqlMapper对 象,实现数据操作。下面我们来看看Dal下核心的Dao如何实现:还记得我们在IBatis.net下面的dao类是怎么实现的吗?没错,我们根据一个基 类BaseDAO和它的构造函数,实现dao的配置加载。但是楼猪的实现没有那么复杂和强大,本文的实现其实就是通过BaseDAO和构造函数获取数据库 连接对象的key,初始化一个SqlMapper,然后利用SqlMapper对象进行基本的CRUD等等数据操作。那么我们如何利用BaseDAO和构 造函数就像以前在IBati阅读全文
posted @ 2010-05-23 18:47 JeffWong 阅读(1953) | 评论 (6) 编辑
ado.net快速上手实践篇(一)
摘要: 前言:这两天重温经典,对ado.net的东西稍微深入的了解了一下,顺便写点代码练练手,全当是复习笔记吧。一、简单说说ado.net的5大常用对象 既然说ado.net,当然不能免俗地要提到5大常用对象。本文不会对ado.net的5大对象和它们的关系进行过多阐释,不过我们应该对下面这张图的结 构有个了解:关于上图图示中的5大对象,经常做以数据为驱动的mis系统的童鞋应该不会陌生。本文一笔带过。下面我们一步一步实现以ado.net为核心 的数据访问程序。【注意:下面的示例代码和demo是楼猪本周六和周日两天时间实现的,未经详细测试,可能有重大bug,下载学习使用的童鞋务必注意】 二、数据访问持久化层1、I阅读全文
posted @ 2010-05-23 14:03 JeffWong 阅读(3183) | 评论 (5) 编辑
原文地址:https://www.cnblogs.com/shixunle/p/3330460.html