ADO.NET是什么?

  ADO.NET是.Net平台提供和数据库交互的类库集,我们可以通过它对SQLSERVER,XML,Oracle等这样的数据源进行访问。 应用程序可以使用ADO.NET链接到数据源,进行增、删、改、查操作。

ADO.NET主要对象有哪些

  ADO.NET主要包含以下五个核心对象:

  1.Connection: 用于和数据源建立连接。

  2.Command:用于执行SQL命令。

  3.DataReader:从数据源读取只进且只读的数据流,读取过程中必须和数据源保持连接状态。

  4.DataAdapter: 用作DataSet和数据源之间的桥接器,以便检索和保存数据。

  5.DataSet: 可以看作是一个暂存区,从数据源中读取到的数据保留起来,可以存储多个表的数据。

简单示例

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Data.SqlClient;
using System.Configuration;
using System.Data; namespace Demo_ADONET
{
class Program
{
static void Main(string[] args)
{
string connectionString = "Data Source=(local);Initial Catalog=TestDatabase;User ID=sa;Password=123456";
TestDataReader(connectionString);
TestDataAdapterFill(connectionString); Console.ReadLine();
} /// <summary>
/// DataReader示例
/// </summary>
/// <param name="connString"></param>
public static void TestDataReader(string connString)
{
string queryString = "SELECT ID,NAME,PRICR FROM TEST2 WHERE PRICR>=3";
using (SqlConnection connection =
new SqlConnection(connString))
{
SqlCommand command = new SqlCommand(queryString, connection); try
{
connection.Open();
SqlDataReader reader = command.ExecuteReader();
while (reader.Read())
{
Console.WriteLine(string.Format("ID{0};NAME{1};PRICE{2}", reader[], reader[], reader[]));
} connection.Close();
}
catch (Exception ex)
{ Console.WriteLine(ex.Message);
}
}
} /// <summary>
/// 用户保存从数据源读取的数据
/// </summary>
private static DataSet dataSet = new DataSet(); /// <summary>
/// 通过DataAdapter从数据源读取数据并填充到DataSet中
/// </summary>
/// <param name="connString"></param>
public static void TestDataAdapterFill(string connString)
{
using (SqlConnection conn = new SqlConnection(connString))
{
string queryString = "SELECT ID,NAME,PRICR FROM TEST2";
try
{
conn.Open();
SqlCommand command = new SqlCommand(queryString, conn);
//DataSet ds = new DataSet();
SqlDataAdapter adapter = new SqlDataAdapter(command);
adapter.Fill(dataSet); if (dataSet != null && dataSet.Tables.Count > )
{
DataTable dataTable = dataSet.Tables[];
for (int i = ; i < dataTable.Rows.Count; i++)
{
Console.WriteLine("ID:{0};Name:{1};Price:{2}",
dataTable.Rows[i]["ID"], dataTable.Rows[i]["NAME"], dataTable.Rows[i]["PRICR"]);
}
}
}
catch (Exception ex)
{ throw ex;
}
finally
{
conn.Close();
}
}
}
}
}

ADO.NET中主要对象的更多相关文章

  1. ADO.NET中COMMAND对象的ExecuteNonQuery、ExcuteReader和ExecuteScalar方法

    1.ExecuteNonQuery方法.该方法执行更新操作,即与UPDATE.INSERT.DELETE等语句有关的操作,在这种情况下,返回值是命令影响的行数.对其他语句,如SET或CREATE,则返 ...

  2. 温故而后知新——对ado.net中常用对象的一些解释

    在使用ado.net连接数据库获取数据,一般的步骤是: 1.设置好web.config    //用来设置服务器数据库的地址以及登录名密码 2.创建Connection对象    //用来创建访问数据 ...

  3. .NET中常见对象类型

    .NET中六大内置对象:1.Response    2.Request   3.Session   4.Appliction  5.Server  6.Cookie System.Web.HttpCo ...

  4. .NET中常见对象

    .NET中六大内置对象:1.Response    2.Request   3.Session   4.Appliction  5.Server  6.Cookie System.Web.HttpCo ...

  5. ADO.NET中的五个主要对象

    Connection:主要是开启程序和数据库之间的连接.没有利用连接对象将数据库打开,是无法从数据库中取得数据的.Close和Dispose的区别,Close以后还可以Open,Dispose以后则不 ...

  6. 【转】ADO.NET中的五个主要对象

    Connection 物件    Connection 对象主要是开启程序和数据库之间的连结.没有利用连结对象将数据库打开,是无法从数据库中取得数据的.这个物件在ADO.NET 的最底层,我们可以自己 ...

  7. ADO.NET中的五大对象

    Connection connection 对象主要是开启程序和数据库之间的连接.没有利用连接对象将数据库打开,是无法从数据库中取到数据的.这个物件是ADO.NET的最底层,我们可以自己产生这个对象, ...

  8. ADO.NET中的五大内置对象

    ADO.NET中的五大内置对象 学习链接:https://blog.csdn.net/wxr15732623310/article/details/51828677

  9. C#反射实现 C# 反射 判断类的延伸类型 使用代码生成工具Database2Sharp快速生成工作流模块控制器和视图代码 C# ADO.NET的SqlDataReader对象,判断是否包含指定字段 页面中添加锚点的几种方式 .net 简单实用Log4net(多个日志配置文件) C# 常用小点

    C#反射实现   一.反射概念: 1.概念: 反射,通俗的讲就是我们在只知道一个对象的内部而不了解内部结构的情况下,通过反射这个技术可以使我们明确这个对象的内部实现. 在.NET中,反射是重要的机制, ...

随机推荐

  1. iOS数组排序

    [_fields sortUsingComparator:^NSComparisonResult(UITextField *obj1, UITextField *obj2) { /* NSOrdere ...

  2. SCU3312 Stockholm Knights(最大流)

    题目大概说一个n×m的格子中,'.'代表空地,'#'代表障碍,'K'代表骑士,'D'代表目的地.骑士每走一步花一条,每一步可以往(+2,+3)(-2,+3)...八个方向走,问占领所有目的地最少要几天 ...

  3. A C[HDU1570]

    A C Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submiss ...

  4. BZOJ1766 : [Ceoi2009]photo

    如果两个矩形相交且不是包含关系,那么完全可以让它们不相交. 将坐标离散化后,设$f[i][j][k]$表示区间$[i,j]$纵坐标不小于$k$的部分的最优解. 对于$f[i][j][k]$,要么枚举分 ...

  5. Codeforces 55D (数位DP+离散化+数论)

    题目链接: http://poj.org/problem?id=2117 题目大意:统计一个范围内数的个数,要求该数能被各位上的数整除.范围2^64. 解题思路: 一开始SB地开了10维数组记录情况. ...

  6. 【BZOJ】1018: [SHOI2008]堵塞的交通traffic

    http://www.lydsy.com/JudgeOnline/problem.php?id=1018 题意:有2行,每行有c(c<=100000)个城市,则一共有c-1个格子,现在有q(q& ...

  7. COJ969 WZJ的数据结构(负三十一)

    WZJ的数据结构(负三十一) 难度级别:D: 运行时间限制:3000ms: 运行空间限制:262144KB: 代码长度限制:2000000B 试题描述 A国有两个主基站,供给全国的资源.定义一个主基站 ...

  8. shell函数

    1. 定义 : func() { } 或 function func() { } 2.参数 func 1 2 3 4 可在函数中直接调$1来使用,>=10的用${n}

  9. dpi 、 dip 、分辨率、屏幕尺寸、px、density 关系以及换算(终结版)

    首先,说下概念(网上很多帖子几个地方都搞混了,理一下):   dip : device independent pixels ,设备无关像素. 我看很多帖子写的五花八门的,关于d的,什么display ...

  10. 运用正则表达式在Asp中过滤Html标签代码的四种不同方法

    Function RemoveHTML(strHTML)Dim objregExp, Match, MatchesSet objRegExp = New RegexpobjRegExp.IgnoreC ...