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
path: root/mcs/class
diff options
context:
space:
mode:
authorVeerapuram Varadhan <v.varadhan@gmail.com>2010-07-13 12:58:34 +0400
committerVeerapuram Varadhan <v.varadhan@gmail.com>2010-07-13 12:58:34 +0400
commit02ff6c22768c7df7acfa7673f033b0d929bc1d2c (patch)
tree75d2f0df2fbd64a7aac76fe2c4ceb6d30fef9949 /mcs/class
parentf79e862f558616ec0bf71f85654e35d69b1c13c5 (diff)
backport of r160281
2010-07-12 Veerapuram Varadhan <vvaradhan@novell.com> ** Fixes #569543 * Tds70.cs (ExecPrepared): Revert back to old changes. * Tds80.cs (ExecPrepared): Override for Tds 8 version that optimizes network bandwidth. svn path=/branches/mono-2-6/mcs/; revision=160282
Diffstat (limited to 'mcs/class')
-rw-r--r--mcs/class/Mono.Data.Tds/Mono.Data.Tds.Protocol/ChangeLog7
-rw-r--r--mcs/class/Mono.Data.Tds/Mono.Data.Tds.Protocol/Tds70.cs5
-rw-r--r--mcs/class/Mono.Data.Tds/Mono.Data.Tds.Protocol/Tds80.cs17
3 files changed, 25 insertions, 4 deletions
diff --git a/mcs/class/Mono.Data.Tds/Mono.Data.Tds.Protocol/ChangeLog b/mcs/class/Mono.Data.Tds/Mono.Data.Tds.Protocol/ChangeLog
index 37dca42e27c..36e7c529a2c 100644
--- a/mcs/class/Mono.Data.Tds/Mono.Data.Tds.Protocol/ChangeLog
+++ b/mcs/class/Mono.Data.Tds/Mono.Data.Tds.Protocol/ChangeLog
@@ -1,3 +1,10 @@
+2010-07-12 Veerapuram Varadhan <vvaradhan@novell.com>
+
+ ** Fixes #569543
+ * Tds70.cs (ExecPrepared): Revert back to old changes.
+ * Tds80.cs (ExecPrepared): Override for Tds 8 version that optimizes
+ network bandwidth.
+
2010-07-10 Veerapuram Varadhan <vvaradhan@novell.com>
** Fixes 620860
diff --git a/mcs/class/Mono.Data.Tds/Mono.Data.Tds.Protocol/Tds70.cs b/mcs/class/Mono.Data.Tds/Mono.Data.Tds.Protocol/Tds70.cs
index e804d143b97..d8af593d085 100644
--- a/mcs/class/Mono.Data.Tds/Mono.Data.Tds.Protocol/Tds70.cs
+++ b/mcs/class/Mono.Data.Tds/Mono.Data.Tds.Protocol/Tds70.cs
@@ -408,10 +408,7 @@ namespace Mono.Data.Tds.Protocol
public override void ExecPrepared (string commandText, TdsMetaParameterCollection parameters, int timeout, bool wantResults)
{
Parameters = parameters;
- if (Parameters != null && Parameters.Count > 0)
- ExecRPC (TdsRpcProcId.ExecuteSql, commandText, parameters, timeout, wantResults);
- else
- ExecuteQuery (BuildPreparedQuery (commandText), timeout, wantResults);
+ ExecuteQuery (BuildPreparedQuery (commandText), timeout, wantResults);
}
public override void ExecProc (string commandText, TdsMetaParameterCollection parameters, int timeout, bool wantResults)
diff --git a/mcs/class/Mono.Data.Tds/Mono.Data.Tds.Protocol/Tds80.cs b/mcs/class/Mono.Data.Tds/Mono.Data.Tds.Protocol/Tds80.cs
index b507da39f0e..8d03305578b 100644
--- a/mcs/class/Mono.Data.Tds/Mono.Data.Tds.Protocol/Tds80.cs
+++ b/mcs/class/Mono.Data.Tds/Mono.Data.Tds.Protocol/Tds80.cs
@@ -233,6 +233,23 @@ namespace Mono.Data.Tds.Protocol {
ExecuteQuery (sql, timeout, wantResults);
}
}
+
+ public override void ExecPrepared (string commandText, TdsMetaParameterCollection parameters, int timeout, bool wantResults)
+ {
+ Parameters = parameters;
+ // We are connected to a Sql 7.0 server
+ if (TdsVersion < TdsVersion.tds80 ||
+ Parameters == null || Parameters.Count < 1) {
+ base.ExecPrepared (commandText, parameters, timeout, wantResults);
+ return;
+ }
+ TdsMetaParameterCollection parms = new TdsMetaParameterCollection ();
+ parms.Add (new TdsMetaParameter ("@Handle", "int", Int32.Parse (commandText)));
+ foreach (TdsMetaParameter parm in Parameters)
+ parms.Add (parm);
+
+ ExecRPC ("sp_execute", parms, timeout, wantResults);
+ }
#endregion // Methods
}