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. [LintCode] Binary Tree Serialization

    Design an algorithm and write code to serialize and deserialize a binary tree. Writing the tree to a ...

  2. HDU2222 Keywords Search(AC自动机模板)

    AC自动机是一种多模式匹配的算法.大概过程如下: 首先所有模式串构造一棵Trie树,Trie树上的每个非根结点都代表一个从根出发到该点路径的字符串. 然后每个结点都计算出其fail指针的值,这个fai ...

  3. DelPhi学习网站

    http://www.2ccc.com/downloads.asp?subcatalogid=101&pageid=14 http://www.2ccc.com/ http://www.xue ...

  4. BZOJ3325 : [Scoi2013]密码

    从以每一位为中心的回文串长度可以用Manacher倒推出$O(n)$对相等和不等关系. 将相等的用并查集维护,不等的连边. 然后输出方案时若还没被染过色,则求一个mex. #include<cs ...

  5. slice、substring和substr

    首先,他们都接收两个参数,slice和substring接收的是起始位置和结束位置(不包括结束位置),而substr接收的则是起始位置和所要返回的字符串长度.直接看下面例子: 1    var tes ...

  6. ios cocos2d FPS过低的解决方法

    每当运行程序时,左下角的FPS就低到了10,使app很卡, 原来程序主要卡的部分 -(void)draw{ NSDate *startTime = [NSDate date]; [self func] ...

  7. JS按位非(~)运算符与~~运算符的理解分析

    按位非运算符,简单的理解就是改变运算数的符号并减去1,当然,这是只是简单的理解能转换成number类型的数据. 那么,对于typeof var!==”number”的类型来说,进行运算时,会尝试转化成 ...

  8. shell 之for [转]

    本文也即<Learning the bash Shell>3rd Edition的第五章Flow Control之读书笔记之二,但我们将不限于此.flow control是任何编程语言中很 ...

  9. Reprojection Matrix Q

    Given the disparity d and 2D point (x, y) , we can derive the 3D depth using the 4-by-4 reprojection ...

  10. 命令行安装KVM

    查看libvirtd的状态: [root@super67 ~]# /etc/init.d/libvirtd status libvirtd (pid  2503) is running... 安装vn ...