首页
学习
活动
专区
圈层
工具
发布

ADO.NET入门教程(一) 初识ADO.NET

本文将从宏观的角度来探讨ADO.NET,和大家一起了解ADO.NET来龙去脉以及ADO.NET的主要组成部分。 ----  目录 什么是ADO.NET?...具体来说,ADO.NET 对 Microsoft SQL Server 和 XML 等数据源以及通过 OLE DB 和 XML 公开的数据源提供一致的访问。...数据共享使用者应用程序可以使用 ADO.NET 来连接到这些数据源,并检索、处理和更新所包含的数据。      ...理清ADO.NET与ADO的关系       作为一个普通的缩略词,"ADO.NET”并只不是"ADO”的简单升级版本。严格的讲,ADO.NET和ADO是两种截然不同的数据访问方式。      ...Entity Framework和LINQ是微软为了提高ADO.NET核心功能而建立的两个新的工具。需要注意的是,它们并不是ADO.NET的基本组成部分。

5.1K111
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    ADO数据库C#中ExecuteReader、ExecuteNonQuery、ExecuteScalar、SqlDataReader、SqlDataAdapter

    2、ExecuteScalar()也可以执行sql语句。如果SQL语句是Select查询,则仅仅返回查询结果集中第一行第一列,而忽略其他行和列。...(建议查询数据库时使用)  由于不知道sql语句到底是什么样的结构(有可能是int,有可能是Char等其它,)所以ExecuteScalar()方法返回一个最基本的类型Object,这个类型是所有类型的基类...(); } return result; } } 注:ExecuteScalar()也返回一个int型变量。...如果SQL语句是Select查询,则仅仅返回查询结果集中第一行第一列,而忽略其他行和列。如果SQL语句不是Select查询,则这个返回结果没任何作用。...DataReader对象,如果在SqlCommand对象中调用, 则返回SqlDataReader,如果在OledbCommand对象中调用,返回的是OledbDataReader,可以调用DataReader的方法和属性迭代处理结果集

    1.3K30

    ADO.Net学习总结

    一.讲述6个ADO.NET中的常用对象: Connection对象 Command对象 DataReader对象 DataAdapter对象 DataSet对象 DataTable对象 DataRow对象...ExecuteScalar ():从数据库检索单个值。这个方法主要用于统计操作:ExecuteScalar ():方法只返回查询结果集的第一行第一列。  ...在.net类库中提供了一种方法,在关闭DataReader对象的同时自动关闭掉与之相关的Connection对象,使用这种方法是可以为ExecuteReader()方法指定一个参数,如: SqlDataReader...综合前面三种方式各有特点,第一种方式最直接,但是有可能抛出异常,第二种方式比第一种稍微灵活一些,我们可以根据读取到值为空(在.net里用DBNull类来表示,可以表示数据库中任意数据类型的空值),我们就不进行相应的类型转换...5.DataTable对象 DataTable 是 ADO.NET 库中的核心对象,就像普通的数据库中的表一样,它也有行和列。它主要包括DataRow和DataColumn,分别代表行和列。

    1.6K50

    ExecuteScalar方法

    ADO.NETCommand对象有一个ExecuteScalar方法,它从相关的查询中返回第一行和第一列的值。因为不用创建行集、查找值并关闭行集,所以这样所产生的系统开销非常小。...ExecuteScalar方法已经针对需要检索单值的特定场合进行了优化。...下例实现的功能与前例相同,只不过使用的是ASP.NET和ADO.NET以及ExecuteScalar方法: string sSql = “SELECTCOUNT(*) As iRowCountFROMOrders...它在ADO和ADO.NET中都适用,虽然ADO.NET已经扩展了输出参数的功能。在ADO.NET中为了从Command对象获取输出变量的值,应该使用ExecuteNonQuery方法执行查询。...在传统的ADO中这是在Connection对象的Execute方法中使用晦涩难懂的参数实现的,而我们可以看到,在ADO.NET中实现这一点已经非常简单了。

    60820

    基于Ado.Net的日志组件

    软件开发,离不开对日志的操作,它可以帮助我们查找和检测问题。好的日志组件可以对于整个系统来说,至关重要 在NaviSoft产品中,日志组件也占有非常重要的份量。...如下图所示,是组件的Db表结构设计 图-1 登录日志:记录系统的登录信息,包括登录用户、登录时间、客户端信息 操作日志:记录每个功能操作信息,包括操作时间、内容和结果 异常错误日志:当整个系统 方法日志...:记录每个方法的名称、参数、返回值、所在类和DLL等。...操作日志 API异常错误日志:记录API执行异常日志 API调用次数日志:记录API调用次数日志,防止超出调用次数 临时记录表:记录自定义的日志内容,只有一个字符串,可随意保存内容 整个日志组件,采用Ado.Net...dbService.ExecSqlAndParamByTrans(new List() { dbSql }); } 另外,NaviSoft的日志组件,也将log4net

    92990

    ADO.NET的弹性连接控制

    ADO.NET连接SQL Server有时候联机会无故的中断 (例如闲置过久或是交易时间太长等因素),这时又要重新连接,在.NET Framework 4.5之前,这件事情要由开发人员自己依照ADO.NET...Framework 4.5.1则正式将它纳入ADO.NET的核心程序代码中,能够断开会话状态并在适当的时候恢复会话,很多场景都会收益于这个功能....ADO.NET Idle Connection Resiliency这个功能被包装在Entity Framework 6中,在DbConfiguration设定DbExecutionStrategy对象...支持一系列的重试方案(固定周期,渐进周期,随机指数退避) 支持SQL 连接和SQL命令使用不同的Retry策略。...为SqlConnection 和SqlCommand对象提供了扩展方法来实现Retry操作 支持Retry后的回调,通知用户代码是否发生了Retry情况 支持快速重试模式,当第一次发生进行Retry

    1.8K90

    关于ADO.NET连接池

    想了想,造成这种情况的原因是ADO.NET的内部机制造成的。...ADO.NET中为了提高性能,所以使用了连接池,这样每个请求就不必都创建一个连接,然后认证,然后执行SQL,而是从连接池中直接取出连接执行SQL,执行完成后也并不是真正关闭连接,而是将该连接重新放回连接池中...既然是连接池的问题,那么我就针对该问题想到了2个解决办法: 1.关闭ADO.NET的连接池,每次执行SQL时都是新建一个连接执行,然后关闭。...以下是网上找到的一篇介绍ADO.NET连接池的文章,感觉不错。 连接池允许应用程序从连接池中获得一个连接并使用这个连接,而不需要为每一个连接请求重新建立一个连接。...你可以调用close和dispose将连接归还给连接池。 4. 我应该如何允许连接池? 对于.NET应用程序而言,默认为允许连接池。

    89210
    领券