Hello Daiel, To ADO.NET maintainer ? though not sure.
Varadhan ? Thanks Nagappan On Thu, Sep 4, 2008 at 1:40 PM, Daniel Morgan <[EMAIL PROTECTED]> wrote: > Mono's wiki has a good explanation. Basically, it is our source code > management. When I say trunk, I mean the latest. Then Mono project has an > anonymous subversion server which allows anyway to check out code. > > http://www.mono-project.com/SVN > > I suppose I should backport my fixes to the Mono 2.0 branch. I don't know > how to do that. Nor do I know who to ask for approval for my patches. > > > --- On Thu, 9/4/08, sumesh0710 <[EMAIL PROTECTED]> wrote: > > > From: sumesh0710 <[EMAIL PROTECTED]> > > Subject: Re: [Mono-list] re f cursor issue in oracle stored procedure > invoked from mono > > To: [email protected] > > Date: Thursday, September 4, 2008, 3:15 PM > > Really!!..but how do i make work this stuff in my machine? > > What is svn?.I am > > a newbie. > > > > > > Daniel Morgan-3 wrote: > > > > > > Ok. I fixed your bug. I just committed it to svn > > trunk. It was revision > > > 112250. > > > > > > The bug was with an output parameter that is a ref > > cursor from a stored > > > procedure when calling ExecuteReader. ExecuteReader > > is used by > > > DbDataAdapter to fill a DataSet. > > > > > > --- On Wed, 9/3/08, sumesh0710 > > <[EMAIL PROTECTED]> wrote: > > > > > >> From: sumesh0710 <[EMAIL PROTECTED]> > > >> Subject: Re: [Mono-list] re f cursor issue in > > oracle stored procedure > > >> invoked from mono > > >> To: [email protected] > > >> Date: Wednesday, September 3, 2008, 5:37 AM > > >> Thanks for the reply. I tried using execute > > reader, but the > > >> outputparameter > > >> value was null. In my case I used > > >> > > >> cmdSp = New OracleCommand("test", con) > > >> cmdSp.CommandType = CommandType.StoredProcedure > > >> I will try as ur code. Is your mono version is > > latest? I > > >> saw in release > > >> notes of mono 1.9.1, that there is ref cursor > > support, > > >> which means no cursor > > >> support in previous versions? > > >> > > >> > > >> Daniel Morgan-3 wrote: > > >> > > > >> > DbDataAdapter uses ExecuteReader and the > > returned > > >> reader to populate the > > >> > data table. If you try your example with > > >> ExecuteReader and then try to > > >> > get the data reader from the parameter, it > > will fail > > >> because you will have > > >> > DBNull.Value. At least this is what you get > > on .net > > >> 2.0. > > >> > > > >> > My advice is to use ExecuteNonQuery(), then > > get the > > >> data reader from the > > >> > parameter. Then manually load a data table. > > > > >> > > > >> > Here is an example that works for me on .net > > 2.0 and > > >> mono: > > >> > > > >> > // test.cs > > >> > // gmcs test.cs /r:System.Data.dll > > >> /r:System.Data.OracleClient.dll > > >> > using System; > > >> > using System.Data; > > >> > using System.Data.Common; > > >> > using System.Data.OracleClient; > > >> > > > >> > public class test > > >> > { > > >> > public static void Main(string[] args) > > >> > { > > >> > > > Console.WriteLine("Start."); > > >> > OracleConnection con = new > > >> OracleConnection("Data > > >> > source=testdb;user > > >> id=someuser;password=somepass"); > > >> > con.Open(); > > >> > OracleCommand cmdSp = > > con.CreateCommand(); > > >> > cmdSp.CommandText = "BEGIN\n > > >> SP_TEST_REF_CURSOR(:crsdata); > > >> > \nEND;\n"; > > >> > DataSet ds = new DataSet(); > > >> > OracleParameter oprCursor = new > > >> OracleParameter("crsdata", > > >> > OracleType.Cursor); > > >> > oprCursor.Direction = > > >> ParameterDirection.Output; > > >> > cmdSp.Parameters.Add(oprCursor); > > >> > > > >> > cmdSp.ExecuteNonQuery(); > > >> > > > >> > OracleDataReader reader = > > >> (OracleDataReader)oprCursor.Value; > > >> > > > >> > Console.WriteLine("Build DataSet from > > reader > > >> that holds a REF CURSOR"); > > >> > > > >> > DataTable schema = reader.GetSchemaTable(); > > >> > DataTable newTable = new DataTable(); > > >> > if (reader.FieldCount > 0) > > >> > { > > >> > foreach (DataRow row in > > schema.Rows) > > >> > { > > >> > string columnName = > > >> row["ColumnName"].ToString(); > > >> > Type columnType = > > >> (Type)row["DataType"]; > > >> > > > newTable.Columns.Add(columnName, > > >> columnType); > > >> > } > > >> > while (reader.Read()) > > >> > { > > >> > object[] values = new > > >> object[newTable.Columns.Count]; > > >> > reader.GetValues(values); > > >> > newTable.Rows.Add(values); > > >> > } > > >> > } > > >> > > > >> > reader.Close(); > > >> > > > >> > Console.WriteLine("Add DataTable to > > >> DataSet"); > > >> > ds.Tables.Add(newTable); > > >> > > > >> > Console.WriteLine("Show Result"); > > >> > Console.WriteLine("Columns in > > >> DataTable"); > > >> > foreach (DataColumn column in > > >> ds.Tables[0].Columns) > > >> > { > > >> > Console.WriteLine(" > > ColumnName: > > >> " + column.ColumnName); > > >> > Console.WriteLine(" > > DataType: > > >> " + > > >> > column.DataType.ToString()); > > >> > } > > >> > Console.WriteLine("Rows in > > >> DataTable"); > > >> > foreach (DataRow row in > > ds.Tables[0].Rows) > > >> > { > > >> > for (int c = 0; c < > > >> ds.Tables[0].Columns.Count; c++) > > >> > { > > >> > > > Console.WriteLine("Column " > > >> + c.ToString()); > > >> > if > > (row[c].Equals(DBNull.Value)) > > >> > Console.WriteLine(" > > Value > > >> is DBNull.Value"); > > >> > else > > >> > { > > >> > Console.WriteLine(" > > > > >> Value: " + row[c].ToString()); > > >> > Console.WriteLine(" > > Value > > >> Type: " + > > >> > row[c].GetType().ToString()); > > >> > } > > >> > } > > >> > } > > >> > > > >> > con.Close(); > > >> > con = null; > > >> > > > Console.WriteLine("Success!"); > > >> > } > > >> > } > > >> > > > >> > > > >> > > > >> > > > >> > > > >> > > > >> > --- On Tue, 9/2/08, sumesh0710 > > >> <[EMAIL PROTECTED]> wrote: > > >> > > > >> >> From: sumesh0710 > > <[EMAIL PROTECTED]> > > >> >> Subject: [Mono-list] re f cursor issue in > > oracle > > >> stored procedure invoked > > >> >> from mono > > >> >> To: [email protected] > > >> >> Date: Tuesday, September 2, 2008, 10:27 > > AM > > >> >> Hi, > > >> >> OS - Linux Version 2.6.9-42.0.0.0.1( Red > > hat > > >> version > > >> >> 3.4.6-3.1) > > >> >> Oracle - 9.2.0 > > >> >> mono - 1.2.4 > > >> >> > > >> >> I have a simple procedure which has a ref > > cursor > > >> as > > >> >> parameter as follows. > > >> >> > > >> >> CREATE OR REPLACE PROCEDURE > > >> >> "DARSTRAN"."TEST" > > (crsdata out > > >> >> sys_refcursor) > > >> >> as > > >> >> > > >> >> BEGIN > > >> >> open crsdata for select sysdate from > > dual; > > >> >> END; > > >> >> > > >> >> If i execute this from proc from sql > > plus. It > > >> works fine. > > >> >> Also in windows > > >> >> OS, if i call from an application > > developed in > > >> vb.net it > > >> >> will work. But same > > >> >> code executed in mono in Linux OS shows > > below > > >> error while > > >> >> filling into > > >> >> dataset. > > >> >> ora- 01403: no data found. > > >> >> > > >> >> Code used is > > >> >> > > >> >> cmdSp = New > > OracleCommand("test", con) > > >> >> cmdSp.CommandType = > > CommandType.StoredProcedure > > >> >> ds = New DataSet > > >> >> oprCursor = New > > >> OracleParameter("crsdata", > > >> >> OracleType.Cursor) > > >> >> oprCursor.Direction = > > ParameterDirection.Output > > >> >> cmdSp.Parameters.Add(oprCursor) > > >> >> dasp = New OracleDataAdapter(cmdSp) > > >> >> dasp.Fill(ds) > > >> >> > > >> >> If i execute above SP from linux sql > > plus, also it > > >> works > > >> >> ok. > > >> >> > > >> >> Is there any workaround to solve this > > problem? > > >> >> -- > > >> >> View this message in context: > > >> >> > > >> > > > http://www.nabble.com/ref-cursor-issue-in-oracle-stored-procedure-invoked-from-mono-tp19271280p19271280.html > > >> >> Sent from the Mono - General mailing list > > archive > > >> at > > >> >> Nabble.com. > > >> >> > > >> >> > > _______________________________________________ > > >> >> Mono-list maillist - > > [email protected] > > >> >> > > http://lists.ximian.com/mailman/listinfo/mono-list > > >> > > > >> > > > >> > > > >> > > > _______________________________________________ > > >> > Mono-list maillist - > > [email protected] > > >> > > > http://lists.ximian.com/mailman/listinfo/mono-list > > >> > > > >> > > > >> > > >> -- > > >> View this message in context: > > >> > > > http://www.nabble.com/ref-cursor-issue-in-oracle-stored-procedure-invoked-from-mono-tp19271280p19285959.html > > >> Sent from the Mono - General mailing list archive > > at > > >> Nabble.com. > > >> > > >> _______________________________________________ > > >> Mono-list maillist - [email protected] > > >> http://lists.ximian.com/mailman/listinfo/mono-list > > > > > > > > > > > > _______________________________________________ > > > Mono-list maillist - [email protected] > > > http://lists.ximian.com/mailman/listinfo/mono-list > > > > > > > > > > -- > > View this message in context: > > > http://www.nabble.com/ref-cursor-issue-in-oracle-stored-procedure-invoked-from-mono-tp19271280p19317995.html > > Sent from the Mono - General mailing list archive at > > Nabble.com. > > > > _______________________________________________ > > Mono-list maillist - [email protected] > > http://lists.ximian.com/mailman/listinfo/mono-list > > > > _______________________________________________ > Mono-list maillist - [email protected] > http://lists.ximian.com/mailman/listinfo/mono-list > -- Linux Desktop (GUI Application) Testing Project - http://ldtp.freedesktop.org http://nagappanal.blogspot.com
_______________________________________________ Mono-list maillist - [email protected] http://lists.ximian.com/mailman/listinfo/mono-list
