日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術(shù)文章
文章詳情頁

Oracle數(shù)據(jù)庫返回cursor問題的解決方法

瀏覽:292日期:2023-11-22 19:31:25

這篇論壇文章(賽迪網(wǎng)技術(shù)社區(qū))著重介紹了Oracle數(shù)據(jù)庫返回cursor問題的解決方法,詳細內(nèi)容請參考下文:

昨天使用 Data Block 操作 oracle 返回 cursor 。期間產(chǎn)生了一點問題,很是郁悶,找了一下午也沒有解決。早上睡不著,起來繼續(xù)找。結(jié)果找到了解決的方法。其實也是怪自己沒有很好的看文檔。在此記錄一下。以使別的同志再出現(xiàn)我的問題的時候,很容易的找到解決的方法。

問題是這樣的:

我在oracle里面有這樣一個過程

PROCEDURE ListAllStatic_Users (cur_Static_User OUT T_CURSOR)

IS

BEGIN

OPEN cur_Static_User FOR

Select * FROM Static_User ;

END ListAllStatic_Users;

我在程序里面如下調(diào)用:

Database db = DatabaseFactory.CreateDatabase('oraserver');

string sqlCommand = 'Static_UserPackage.ListAllStatic_Users';

DBCommandWrapper dbCommandWrapper =db.GetStoredProcCommandWrapper(sqlCommand);

DataSet dsCustomers = db.ExecuteDataSet(dbCommandWrapper);

DataGrid1.DataSource=dsCstomers;

DataGrid1.DataBind();

結(jié)果出現(xiàn)如下問題:

ORA-06550: 第 1 行, 第 7 列: PLS-00306: 調(diào)用 'LISTALLSTATIC_USERS' 時參數(shù)個數(shù)或類型錯誤 orA-06550: 第 1 行, 第 7 列: PL/SQL: Statement ignored

說明: 執(zhí)行當前 Web 請求期間,出現(xiàn)未處理的異常。請檢查堆棧跟蹤信息,以了解有關(guān)該錯誤以及代碼中導致錯誤的出處的詳細信息。

異常詳細信息: System.Data.OracleClient.OracleException: orA-06550: 第 1 行, 第 7 列: PLS-00306: 調(diào)用 'LISTALLSTATIC_USERS' 時參數(shù)個數(shù)或類型錯誤 orA-06550: 第 1 行, 第 7 列: PL/SQL: Statement ignored

源錯誤:

行 44:

行 45: DataSet dsCustomers = db.ExecuteDataSet(dbCommandWrapper);行 46: DataGrid1.DataSource=dsCustomers;

行 47: DataGrid1.DataBind();

我以為是我的參數(shù)沒有弄對,于是就加了一句:

dbCommandWrapper.AddOutParameter('cur_Static_User',DbType.Object,500);

結(jié)果還是一樣的。后來也試驗了

OracleCommandWrapper.AddParameter(string,DbType,int,ParameterDirection,bool,byte,byte,string,DataRowVersion,object);

這個方法來添加,也是不行。

后來就上網(wǎng)找了很長時間也沒有什么進展。今天早上起來,還是一籌莫展,偶爾的打開Enterprise Library安裝目錄的Enterprise Library Release Notes.rtf文件,發(fā)現(xiàn)里面有這么一段

2.4 Data Access Application Block: Default oracle cursor cur_OUT

The managed provider for oracle requires you to explicitly bind your reference cursor in your parameter collection. This means you must explicitly create an output parameter for the cursor in your application code. However, that code will not be portable with database systems that do not require a parameter for the cursor. The oracleDatabase allows you to create commands without specifying a cursor. It will create a cursor, named cur_OUT, for commands that execute a stored procedure and do not include an output parameter for the cursor. This means that you can name your reference cursor as 'cur_OUT' and the Data Access Application Block will bind it for you; you do not need to explicitly create an output parameter for the cursor. If your stored procedures use a cursor with a name other than 'cur_OUT,' you must explicitly add a parameter for each cursor to the command. Similarly, if your stored procedure contains multiple cursors, you must explicitly add each cursor parameter to the command.

這下我就明白了。在我的oracle函數(shù)中,我的名字 cur_Static_User 和默認的名字cur_OUT不匹配。

于是我就改了我的存儲過程的參數(shù)名稱,cur_Static_User改為 cur_OUT。

問題就解決了。

經(jīng)過試驗,也可以用如下方法用自己的參數(shù)名,而不用默認的參數(shù)名。

也可以,在一個PROCEDURE中返回多個 CURSOR

我的存儲過程:

Procedure STATIC_USER_SelectAll

( cur_OUT_f OUT T_OUT, cur_OUT_g OUT T_OUT)

AS

Begin

OPEN cur_OUT_f FOR Select * from STATIC_USER;

OPEN cur_OUT_g FOR Select * from STATIC_ROLE;

End;

代碼如下:

Database db = DatabaseFactory.CreateDatabase('oraserver');

string sqlCommand = 'Static_UserPackage.STATIC_USER_SelectAll';

Microsoft.Practices.EnterpriseLibrary.Data.Oracle.OracleCommandWrapper dbCommandWrapper =(Microsoft.Practices.EnterpriseLibrary.Data.Oracle.OracleCommandWrapper)db.GetStoredProcCommandWrapper(sqlCommand);

dbCommandWrapper.AddParameter('cur_OUT_f', OracleType.Cursor, 0, ParameterDirection.Output, true, 0, 0, String.Empty, DataRowVersion.Default, Convert.DBNull);

dbCommandWrapper.AddParameter('cur_OUT_g', OracleType.Cursor, 0, ParameterDirection.Output, true, 0, 0, String.Empty, DataRowVersion.Default, Convert.DBNull);

DataSet dsCustomers = db.ExecuteDataSet(dbCommandWrapper);

DataGrid1.DataSource=dsCustomers.Tables[0];

DataGrid1.DataBind();

DataGrid2.DataSource=dsCustomers.Tables[1];

DataGrid2.DataBind();

日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
日本久久一区| 久久九九电影| 亚洲自拍另类| 亚洲一区二区三区四区五区午夜| 久久久五月天| 99久久亚洲精品蜜臀| 久久久成人网| 超碰在线99| 成人羞羞视频播放网站| 99久久夜色精品国产亚洲狼| 久久久蜜桃一区二区人| 91精品韩国| 亚洲精品成人| 日韩美女精品| 国产精品成人一区二区不卡| 欧美国产一级| 精品在线播放| 69堂免费精品视频在线播放| 国产日本亚洲| 福利片在线一区二区| 日韩欧美精品| 亚洲一区有码| 国产精品麻豆成人av电影艾秋 | 国产精品片aa在线观看| 日韩av专区| 国产综合视频| 欧美一区免费| 久久久久久免费视频| 亚洲精品麻豆| 亚洲精品**中文毛片| 人在线成免费视频| 日韩和欧美一区二区| 亚洲黄页一区| 午夜久久av | 久久不见久久见免费视频7| 99久久夜色精品国产亚洲1000部| 中文字幕亚洲精品乱码| 精品欧美日韩精品| 在线看片日韩| 欧美精品一区二区三区精品| 美日韩一区二区三区| 欧美日韩国产欧| 国产探花一区二区| 日av在线不卡| 亚洲视频综合| 精品一区二区三区亚洲| 热久久国产精品| 激情欧美国产欧美| 成人在线超碰| 国产精品**亚洲精品| 蜜臀久久99精品久久久画质超高清| 国产精品久久久久久久免费观看| 青青草91视频| 日韩在线电影| 蜜桃视频一区二区| 99国产精品视频免费观看一公开| 伊人久久在线| 国产一区精品福利| 国产精品乱战久久久| 亚洲欧美在线专区| 日韩影院在线观看| 蜜桃视频一区二区三区| 亚洲欧美日本日韩| 亚洲一级在线| 亚洲精品一级| 日韩av一区二区三区| 日韩国产一二三区| 欧美日韩亚洲国产精品| 国产日韩免费| 美女视频黄 久久| 国产成人久久| 日韩免费福利视频| 色爱综合网欧美| 久久久男人天堂| 日韩在线免费| 日韩中文字幕一区二区三区| 丝袜美腿高跟呻吟高潮一区| 男人天堂欧美日韩| 日本a级不卡| 久久只有精品| 日韩中文视频| 日韩制服丝袜av| 国产日韩一区| 亚洲一级少妇| 亚洲一区有码| 美腿丝袜在线亚洲一区| 日韩免费av| 日韩成人三级| 激情综合网五月| 亚洲欧美在线专区| 国产精品啊啊啊| 久久影院一区二区三区| 欧美sss在线视频| 亚洲免费观看| 久久国产尿小便嘘嘘| 日韩久久一区二区三区| 亚洲一区免费| 久久精品国产精品亚洲毛片| 国产综合激情| 日韩亚洲精品在线观看| 国产一区福利| 亚洲精品乱码| 精品国产美女a久久9999| 最近高清中文在线字幕在线观看1| 91超碰国产精品| 欧美日一区二区三区在线观看国产免| 久久久国产精品入口麻豆| 婷婷综合激情| 你懂的国产精品| 国产视频一区欧美| 国产第一亚洲| 久久国内精品自在自线400部| 97人人精品| 国产日韩免费| 综合激情一区| 午夜国产精品视频免费体验区| 久久精品理论片| 久久精品影视| 美女毛片一区二区三区四区最新中文字幕亚洲 | 男人的天堂久久精品| 成人在线视频中文字幕| 欧美在线不卡| 免费人成在线不卡| 激情亚洲影院在线观看| 国产精品99精品一区二区三区∴| 欧美福利一区| 国产aa精品| 国产日韩中文在线中文字幕| 日本大胆欧美人术艺术动态| 激情婷婷久久| 久久精品国产68国产精品亚洲| 精品国产午夜肉伦伦影院| 奇米狠狠一区二区三区| 亚洲一区二区三区高清不卡| 精品一区亚洲| 欧美福利专区| 在线看片不卡| 亚洲一区久久| 日韩精品一级中文字幕精品视频免费观看| 亚洲精品一区三区三区在线观看| 久久99免费视频| 国产日产一区| 国产精品久久久久久久久久齐齐 | 国产精选久久| 精品久久久久中文字幕小说| 国产精品密蕾丝视频下载| 国产精品成人3p一区二区三区| 18国产精品| 精品国产网站| 精品国产亚洲一区二区在线观看| 久久三级中文| 91日韩欧美| 久久精品亚洲人成影院 | 日韩av影院| 久久香蕉网站| 中文字幕成在线观看| 色综合www| 日韩在线观看一区二区| 亚洲制服欧美另类| 日本va欧美va欧美va精品| 国产精品白浆| 日韩啪啪电影网| 亚洲激情中文| 国产日产一区| 99久久99久久精品国产片果冰| 久久国产精品亚洲77777| 日韩高清不卡一区二区| 91欧美在线| 亚洲精品免费观看| 激情国产在线| 日韩毛片一区| 成人久久久久| 久久国际精品| 激情综合在线| 麻豆精品国产91久久久久久| 制服诱惑一区二区| 国产麻豆精品| 99久久激情| 美女视频免费精品| 五月天综合网站| 精品免费av| 国产午夜久久av| 视频一区二区不卡| 亚洲天堂黄色| 久久久久久夜| 国产精品久一| 日韩精品久久理论片| 欧美美女一区| 成人看片网站| 精品国产成人| 国产欧美日韩视频在线| 欧美日韩国产综合网| 精品国产欧美| 麻豆精品蜜桃视频网站| 亚洲专区视频| 亚洲欧美日韩国产| 欧美午夜不卡| 欧美日韩国产在线观看网站| 欧美激情精品| 国产精品v日韩精品v欧美精品网站|