제목 : 예제 : Orders 테이블과 OrderDetails 테이블간에 master와 detail 관계 생성
글번호:
|
|
116
|
작성자:
|
|
레드플러스
|
작성일:
|
|
2005/04/12 오후 9:06:00
|
조회수:
|
|
6089
|
using System;
using System.Collections;
using System.ComponentModel;
using System.Configuration;//
using System.Data;
using System.Data.SqlClient;//
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
namespace ASPNET_Fundamental
{
/// <summary>
/// 쇼핑몰 프로젝트에서 테스트
/// </summary>
public class FrmDataRelation : System.Web.UI.Page
{
private void Page_Load(object sender, System.EventArgs e)
{
// 커넥션
SqlConnection objCon = new SqlConnection(
ConfigurationSettings.AppSettings["ConnectionString"]);
// 어댑터
SqlDataAdapter objDa = new SqlDataAdapter("Select * From Orders", objCon);
// 데이터셋
DataSet objDs = new DataSet();
// Orders 테이블 채우기
objDa.Fill(objDs, "Orders");
// OrderDetails 테이블 채우기
objDa.SelectCommand = new SqlCommand("Select * From OrderDetails", objCon);
objDa.Fill(objDs, "OrderDetails");
// master와 detail 관계 생성
objDs.Relations.Add("OrderInfo", objDs.Tables["Orders"].Columns["OrderID"], objDs.Tables["OrderDetails"].Columns["OrderID"]);
// Orders 테이블의 각 행에 해당되는 OrderDetails 테이블의 레코드 출력
foreach(DataRow objOrders in objDs.Tables["Orders"].Rows)
{
Response.Write("<br>" + objOrders["OrderID"]);
foreach(DataRow objOrderDetails in objOrders.GetChildRows("OrderInfo"))
{
Response.Write("<blockquote>" + objOrderDetails["ProductID"] + "</blockquote>");
}
}
}
#region Web Form 디자이너에서 생성한 코드
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 이 호출은 ASP.NET Web Form 디자이너에 필요합니다.
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// 디자이너 지원에 필요한 메서드입니다.
/// 이 메서드의 내용을 코드 편집기로 수정하지 마십시오.
/// </summary>
private void InitializeComponent()
{
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
}
}