ADO.NET中主要对象
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: 可以看作是一个暂存区,从数据源中读取到的数据保留起来,可以存储多个表的数据。
简单示例
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
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(); } } } } }