2016년 12월 29일 목요일

[닷넷교육,C#교육,실무교육학원추천_탑크리에듀][ADO.NET]ODP.Net을 이용한 Stored Function(저장함수) 호출예제

[ADO.NET]ODP.Net을 이용한 Stored Function(저장함수) 호출예제
 
 
using System; 
using System.Data; 
using Oracle.DataAccess; 
using Oracle.DataAccess.Client; 
using Oracle.DataAccess.Types; 

class Test 

static void Main() 

//get_dalary 
함수는 Oracle에 정의 되어 있는 Stored Function 입니다
//Empno
와 같은 사원번호를 입력 인자로 받아 그 사원의 급여를 돌려 줍니다

string str = "data source=onj;user id=scott; password=tiger"; 

OracleConnection Conn = new OracleConnection(str); 
OracleCommand command = new OracleCommand("get_salary", Conn); 
command.CommandType = CommandType.StoredProcedure; 

OracleParameter output = new OracleParameter("sal", OracleDbType.Int64); 
output.Direction = ParameterDirection.ReturnValue; 
command.Parameters.Add(output); 

OracleParameter input = new OracleParameter("p_id", OracleDbType.Int32); 
input.Direction = ParameterDirection.Input; 
input.Value = 7900; 
command.Parameters.Add(input); 

try 

Conn.Open(); 
command.ExecuteNonQuery(); 
Conn.Close(); 

Console.WriteLine("{0}", output.Value); 
Console.ReadLine(); 


catch(OracleException e) 

Console.WriteLine(e.Number); 
Console.WriteLine(e.Message); 
Console.WriteLine(); 




----------------------------------------
* Oracle Server에 작성된 Stored Function 
--------------------------------------------
create or replace function get_salary 
(p_id in number) 
return number 

is 
v_sal number; 
begin 

select sal 
into v_sal 
from emp 
where empno = p_id; 
return v_sal; 
end; 



*/

댓글 없음:

댓글 쓰기