[VB.NET]请问我如何在vb.net中调用pl/sql包中已经写好的方法?
发布时间:2020-12-16 23:42:01 所属栏目:大数据 来源:网络整理
导读:请问我如何在vb.net中调用pl/sql包中已经写好的方法? sql文如下 CREATE TABLE TEST ( NAME VARCHAR2(10),PSW VARCHAR2(10) ) CREATE OR REPLACE PACKAGE TROUBLEREPORT.test_cursor IS CURSOR CUR_TEST(cname test.name%TYPE) IS SELECT A.name,A.psw FROM
请问我如何在vb.net中调用pl/sql包中已经写好的方法? sql文如下 CREATE TABLE TEST ( NAME VARCHAR2(10),PSW VARCHAR2(10) ) CREATE OR REPLACE PACKAGE TROUBLEREPORT.test_cursor IS CURSOR CUR_TEST(cname test.name%TYPE) IS SELECT A.name,A.psw FROM test A where A.name = cname; CCUR_TEST CUR_TEST%ROWTYPE; PROCEDURE OPEN_ONE_CURSOR (cname IN VARCHAR2,psw OUT VARCHAR2); END; CREATE OR REPLACE PACKAGE BODY TROUBLEREPORT.test_cursor is PROCEDURE OPEN_ONE_CURSOR (cname IN VARCHAR2,psw OUT VARCHAR2) IS BEGIN OPEN CUR_TEST(cname); -- ループ開始 LOOP FETCH CUR_TEST INTO CCUR_TEST; EXIT WHEN CUR_TEST%NOTFOUND; psw:=CCUR_TEST.psw; END LOOP; close CUR_TEST; END OPEN_ONE_CURSOR; END test_cursor; 请问我如何把OPEN_ONE_CURSOR过程返回的第2个参数的值,传到画面上的一个text中去呢?如果我返回的是游标,pl/sql文和vb.net程序该如何写呢? __________________________________________________________________________ OracleCommand cmd = new OracleCommand(); cmd.Connection = conn; cmd.CommandText = TROUBLEREPORT.test_cursor.OPEN_ONE_CURSOR ; cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.Add( cname,OracleType.VarChar).Value = admin ; cmd.Parameters.Add( psw,OracleType.Cursor).Direction = ParameterDirection.Output; conn.Open(); OracleDataReader dr = cmd.ExecuteReader(); if(dr.Read()) { textbox1.text=dr[i].ToString(); } ***************************************************************************** 欢迎使用CSDN论坛专用阅读器 : CSDN Reader(附全部源代码) 最新版本:20070212 http://www.cnblogs.com/feiyun0112/archive/2006/09/20/509783.html __________________________________________________________________________ 楼上正解,另外 需要在项目中把 system.data.oracleclient包含进去。 __________________________________________________________________________ (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |