Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/mono.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--mcs/class/System.Data/System.Data.ProviderBase.jvm/AbstractDBCommand.cs4
-rw-r--r--mcs/class/System.Data/Test/ProviderTests/System.Data.OleDb.jvm/OleDbDataReader/OleDbDataReader_Read.cs20
2 files changed, 22 insertions, 2 deletions
diff --git a/mcs/class/System.Data/System.Data.ProviderBase.jvm/AbstractDBCommand.cs b/mcs/class/System.Data/System.Data.ProviderBase.jvm/AbstractDBCommand.cs
index 0a6604ee013..94b6cdc1f3e 100644
--- a/mcs/class/System.Data/System.Data.ProviderBase.jvm/AbstractDBCommand.cs
+++ b/mcs/class/System.Data/System.Data.ProviderBase.jvm/AbstractDBCommand.cs
@@ -324,7 +324,7 @@ namespace System.Data.ProviderBase
public override object ExecuteScalar ()
{
- IDataReader reader = ExecuteReader(CommandBehavior.SingleRow | CommandBehavior.SequentialAccess);
+ IDataReader reader = ExecuteReader(CommandBehavior.SequentialAccess);
try {
do {
@@ -833,7 +833,7 @@ namespace System.Data.ProviderBase
// FIXME: this causes SP in MS Sql Server to create no mor than one row.
if ((Behavior & CommandBehavior.SingleRow) != 0) {
- _statement.setFetchSize(1);
+ _statement.setMaxRows (1);
}
if(_statement is PreparedStatement) {
diff --git a/mcs/class/System.Data/Test/ProviderTests/System.Data.OleDb.jvm/OleDbDataReader/OleDbDataReader_Read.cs b/mcs/class/System.Data/Test/ProviderTests/System.Data.OleDb.jvm/OleDbDataReader/OleDbDataReader_Read.cs
index f6a8037f700..1d8296954ec 100644
--- a/mcs/class/System.Data/Test/ProviderTests/System.Data.OleDb.jvm/OleDbDataReader/OleDbDataReader_Read.cs
+++ b/mcs/class/System.Data/Test/ProviderTests/System.Data.OleDb.jvm/OleDbDataReader/OleDbDataReader_Read.cs
@@ -78,6 +78,26 @@ namespace MonoTests.System.Data.OleDb
}
[Test]
+ public void CommandBehaviorSingleRow ()
+ {
+ Exception exp = null;
+
+ cmd.CommandText = "Select * From Employees";
+ OleDbDataReader rdr = cmd.ExecuteReader(CommandBehavior.SingleRow);
+
+ try
+ {
+ BeginCase ("CommandBehaviorSingleRow");
+ int i = 0;
+ while (rdr.Read ())
+ i++;
+ Compare(i, 1);
+ }
+ catch(Exception ex){exp = ex;}
+ finally{EndCase(exp); exp = null;}
+ }
+
+ [Test]
public void run()
{
Exception exp = null;