C#中DataReader类的使用

using System;

using System.IO;

using System.Data;

using System.Data.OleDb;



namespace ConsoleDataReader

{

	/// <summary>

	/// Class1 的摘要说明。

	/// </summary>

	class DataReaderClass

	{

		/// <summary>

		/// 应用程序的主入口点。

		/// </summary>

		[STAThread]

		static void Main(string[] args)

		{

			string strCon = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=DataBase.mdb";

			OleDbConnection MyCon = new OleDbConnection(strCon);



			try

			{

				// 打开数据库的连接

				MyCon.Open();

				string strSQL = @"select * from ADODemo";

				OleDbCommand MyCom = new OleDbCommand(strSQL, MyCon);



				// 获取DataReader的数据集

				OleDbDataReader MyDataReader = MyCom.ExecuteReader();



				// 输出数据库字段的名称和类型

				Console.WriteLine("{0}:{1} {2}:{3}", 

                                                                                                   MyDataReader.GetName(0).PadRight(6)

                                                                                                   , MyDataReader.GetDataTypeName(0).PadRight(5),

				              MyDataReader.GetName(2).PadRight(5),

                                                                                                    MyDataReader.GetDataTypeName(2).PadRight(5));

				

				// 获取ADODemo表中的字段总数

				Console.WriteLine("ADODemo表的字段总数:{0}/n"

                                                                                                                  , MyDataReader.FieldCount);



				// 另一种方法获取数据库数据

				while (MyDataReader.Read())

				{

					Console.WriteLine("{0} {1}", MyDataReader

                                                                                                                                       .GetString(0), MyDataReader.GetInt32(2));

				}



				// 返回一个DataTable,需要应用System.Data命名空间

				DataTable MyDataTable = MyDataReader.GetSchemaTable();

				foreach (DataRow row in MyDataTable.Rows)

				{

					foreach (DataColumn col in MyDataTable.Columns)

                                                                                                          Console.WriteLine(col.ColumnName + " = " + row[col]);

					Console.WriteLine("----------------------------------------"); 

				}



				MyDataReader.Close();

			}

			catch (Exception ex)

			{

				Console.WriteLine("{0}", ex.ToString());

			}

			finally

			{

				MyCon.Close();

			}

			Console.ReadLine();

		}

	}

}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值