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[0], reader[1], reader[2]));
}
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 > 0)
{
DataTable dataTable = dataSet.Tables[0];
for (int i = 0; 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();
}
}
}
}
}