我在 Oracle db 中执行了一个名为“GETEMPLOYEEBYID”的存储过程......它接受一个输入参数,并返回 3 个值作为输出......这是它的代码:
CREATE OR REPLACE PROCEDURE User.getEmployeeById(
e_empid IN User.employee.ID%TYPE,
o_firstname OUT User.employee.First_Name%TYPE,
o_lastname OUT User.employee.Last_Name%TYPE,
o_salary OUT User.employee.Salary%TYPE)
IS
BEGIN
SELECT First_Name , Last_Name, Salary
INTO o_firstname, o_lastname, o_salary
FROM User.employee
WHERE ID = e_empid;
END;
在适当地映射存储过程之后,我试图从我的控制台应用程序(C#)代码中调用这个过程......
这是代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Oracle.DataAccess.Client;
using Oracle.DataAccess;
namespace StoredProconsoleApp
{
class Program
{
static void Main(string[] args)
{
Entities e=new Entities();
e.GETEMPLOYEEBYID(3);
....
}
}
}
当我对这个话题低头时,我发现我必须创建连接字符串然后使用它们。但我使用的是实体框架,我想做简单的事情。我理解,我调用程序的方式错了..但我不知道如何处理结果值...有人可以帮我吗...?提前致谢....;-)