데이터베이스 구성 요소 Hxj.Data(8)(스토리지 프로세스 편)

2799 단어
이전 절에서 설명한 sql 문장의 집행은 이 절에서 설명한 것은 저장 과정의 집행이다.
저장 프로세스는 FromProc 방법을 통해 수행됩니다.
매개변수 없는 저장 프로세스를 다음과 같이 수행합니다.
DbSession.Default.FromProc("Ten Most Expensive Products").ToDataTable();

Ten Most Expensive Products는 스토리지 프로세스 이름입니다.
 
매개변수가 있는 저장 프로세스를 수행합니다.
DbSession.Default.FromProc("Sales by Year")
.AddInParameter("Beginning_Date", DbType.DateTime, "1995-01-01")
.AddInParameter("Ending_Date", DbType.DateTime, "1996-12-01")
.ToDataTable();

데이터베이스에서 이 저장 프로세스
create procedure "Sales by Year" 
@Beginning_Date DateTime, @Ending_Date DateTime AS
SELECT Orders.ShippedDate, Orders.OrderID, "Order Subtotals".Subtotal, DATENAME(yy,ShippedDate) AS Year
FROM Orders INNER JOIN "Order Subtotals" ON Orders.OrderID = "Order Subtotals".OrderID
WHERE Orders.ShippedDate Between @Beginning_Date And @Ending_Date

GO

Beginning 이라는 두 개의 매개변수가 있습니다.Date 및 EndingDate.
 
저장 프로세스는 sql 문장의 집행과 유사하지만 저장 프로세스에 파라미터가 많으면 입력과 출력 파라미터가 있을 수 있다.
 
통과
AddInputOutputParameter 메소드 입력 출력 매개변수 추가
AddOutParameter 메서드로 출력 매개변수 추가
AddReturnValueParameter 메소드 반환 매개변수 추가
 
다음 예제에서 매개변수 값을 반환합니다.
ProcSection proc = DbSession.Default.FromProc("testoutstore")
     .AddInParameter("in1", System.Data.DbType.Int32, 1)
     .AddOutParameter("out1", System.Data.DbType.Int32)
     .AddOutParameter("out2", System.Data.DbType.String,100);

proc.ExecuteNonQuery();

Dictionary<string, object> returnValue = proc.GetReturnValues();

foreach (KeyValuePair<string, object> kv in returnValue)
{
    Response.Write("ParameterName:" + kv.Key + "    ;ReturnValue:" + Convert.ToString(kv.Value));
    Response.Write("<br />");
}

여기서 GetReturnValues() 방법은 값을 되돌려 주는 것입니다.
 
 
저장 프로세스의 집행도 매우 간단하다.
 
 
다음 섹션에서는 DbSession의 다른 간단한 액세스 방법에 대해 설명합니다.

좋은 웹페이지 즐겨찾기