multitable.cs

来自「Csharp实例编程百例.rar」· CS 代码 · 共 54 行

CS
54
字号
using System;
using System.Data;
using System.Data.OleDb;

namespace MultiTableApp
{
	/// <summary>
	/// Class1 的摘要说明。
	/// </summary>
	class MultiTable
	{
		/// <summary>
		/// 应用程序的主入口点。
		/// </summary>
		[STAThread]
		static void Main(string[] args)
		{
			OleDbConnection connection = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\C#Program\C#100\Chapter3\NWIND.mdb");

			connection.Open();

	//		OleDbDataAdapter adapter = new OleDbDataAdapter("SELECT CustomerID,CompanyName FROM Customers",connection);

	//		OleDbCommandBuilder builder = new OleDbCommandBuilder(adapter);

			DataSet dataset = new DataSet();
			
				
			OleDbDataAdapter custAdapter = new OleDbDataAdapter("SELECT * FROM Customers",connection);
			OleDbDataAdapter orderAdapter = new OleDbDataAdapter("SELECT * FROM Orders",connection);
			
			custAdapter.Fill(dataset,"Customers");
			orderAdapter.Fill(dataset,"Orders");

			DataRelation custOrderRel = dataset.Relations.Add("CustOrders",
				dataset.Tables["Customers"].Columns["CustomerID"],
				dataset.Tables["Orders"].Columns["CustomerID"]);

			foreach(DataRow custRow in dataset.Tables["Customers"].Rows)
			{
				Console.WriteLine("CumtomerID:" + custRow["CustomerID"] + " Name: " + custRow["CompanyName"]);

				foreach(DataRow orderRow in custRow.GetChildRows(custOrderRel))
				{
					Console.WriteLine("   OrderID:" + orderRow["OrderID"]);
				}
	
			}

			connection.Close();
		}
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?