小编Kri*_*eto的帖子

使用OracleCommand执行pl/sql函数

我有这个pl/sql函数,它唯一做的就是验证用户是否存在于数据库中,如果用户存在,则返回"Y",但如果用户不存在,则返回"N",我想要的是获取我在c#中的pl/sql中返回的值.

我正在使用oracle 10g

            CREATE OR REPLACE FUNCTION KRIST.f_Login (userName IN VARCHAR2,
                                                        password IN VARCHAR2)
            RETURN VARCHAR2 
            IS
                CURSOR USERFINDER IS
                    SELECT IdEmpleado
                    FROM EMPLEADO
                    WHERE Usuario=userName
                    AND Clave=password;
                id number;
                returnVal VARCHAR2(1);
            BEGIN
                OPEN USERFINDER;
                FETCH USERFINDER INTO id; 
                IF(id IS NULL) THEN
                    returnVal:='Y';
                    RETURN returnVal;
                END IF;
                returnVal:='N';
                RETURN returnVal;
                CLOSE USERFINDER;
            END;
            /
Run Code Online (Sandbox Code Playgroud)

我怎么能执行这个功能,并在变量中得到结果...我有thos代码,但不起作用

                OracleCommand cmd = new OracleCommand("krist.p_login",conn);
                cmd.CommandType = CommandType.StoredProcedure;  // use StoredProcedure with Functions as well
                OracleParameter returnVal = new OracleParameter("returnVal",null);
                OracleParameter p_one = new …
Run Code Online (Sandbox Code Playgroud)

c# oracle ado.net plsql

5
推荐指数
2
解决办法
2万
查看次数

标签 统计

ado.net ×1

c# ×1

oracle ×1

plsql ×1