* OdbcCommand: fixed linefeeds to DOS to match other sources
authorGert Driesen <drieseng@users.sourceforge.net>
Sun, 9 May 2004 15:51:54 +0000 (15:51 -0000)
committerGert Driesen <drieseng@users.sourceforge.net>
Sun, 9 May 2004 15:51:54 +0000 (15:51 -0000)
in System.Data.Odbc

svn path=/trunk/mcs/; revision=26990

mcs/class/System.Data/System.Data.Odbc/ChangeLog
mcs/class/System.Data/System.Data.Odbc/OdbcCommand.cs

index b25b0b76cf9216ff821bc2ee0d042451a1484f39..8244badcbf4ca4ee6cc2269aa123f4e8c3786be4 100644 (file)
@@ -1,3 +1,7 @@
+2004-05-09  Gert Driesen (drieseng@users.sourceforge.net)
+       * OdbcCommand: fixed linefeeds to DOS to match other sources
+       in System.Data.Odbc
+
 2004-05-09  Gert Driesen (drieseng@users.sourceforge.net)
        * OdbcTransaction.cs: fixed signature to match MS.NET
 
index 23b8cbb912626659800ff3ffd39f7c0196b6aba5..7c82add93c1bd32db2b7a625b1b0bb19a486907d 100644 (file)
-//
-// System.Data.Odbc.OdbcCommand
-//
-// Authors:
-//   Brian Ritchie (brianlritchie@hotmail.com)
-//
-// Copyright (C) Brian Ritchie, 2002
-//
-
-using System.ComponentModel;
-using System.Data;
-using System.Data.Common;
-using System.Collections;
-using System.Runtime.InteropServices;
-
-namespace System.Data.Odbc
-{
-       /// <summary>
-       /// Represents an SQL statement or stored procedure to execute against a data source.
-       /// </summary>
-       public sealed class OdbcCommand : Component, ICloneable, IDbCommand
-       {
-               #region Fields
-
-               string commandText;
-               int timeout;
-               CommandType commandType;
-               OdbcConnection connection;
-               OdbcParameterCollection parameters;
-               OdbcTransaction transaction;
-               bool designTimeVisible;
-               bool prepared=false;
-               OdbcDataReader dataReader;
-               public IntPtr hstmt;
-               
-               #endregion // Fields
-
-               #region Constructors
-
-               public OdbcCommand ()
-               {
-                       commandText = String.Empty;
-                       timeout = 30; // default timeout 
-                       commandType = CommandType.Text;
-                       connection = null;
-                       parameters = new OdbcParameterCollection ();
-                       transaction = null;
-                       designTimeVisible = false;
-                       dataReader = null;
-               }
-
-               public OdbcCommand (string cmdText) : this ()
-               {
-                       CommandText = cmdText;
-               }
-
-               public OdbcCommand (string cmdText, OdbcConnection connection)
-                       : this (cmdText)
-               {
-                       Connection = connection;
-               }
-
-               public OdbcCommand (string cmdText,
-                                    OdbcConnection connection,
-                                    OdbcTransaction transaction) : this (cmdText, connection)
-               {
-                       this.transaction = transaction;
-               }
-
-               #endregion // Constructors
-
-               #region Properties
-
-               internal IntPtr hStmt
-               {
-                       get { return hstmt; }
-               }
-
-               public string CommandText 
-               {
-                       get {
-                               return commandText;
-                       }
-                       set { 
-                               prepared=false;
-                               commandText = value;
-                       }
-               }
-
-               public int CommandTimeout {
-                       get {
-                               return timeout;
-                       }
-                       set {
-                               timeout = value;
-                       }
-               }
-
-               public CommandType CommandType { 
-                       get {
-                               return commandType;
-                       }
-                       set {
-                               commandType = value;
-                       }
-               }
-
-               public OdbcConnection Connection { 
-                       get {
-                               return connection;
-                       }
-                       set {
-                               connection = value;
-                       }
-               }
-
-               public bool DesignTimeVisible { 
-                       get {
-                               return designTimeVisible;
-                       }
-                       set {
-                               designTimeVisible = value;
-                       }
-               }
-
-               public OdbcParameterCollection Parameters {
-                       get {
-                               return parameters;
-                       }
-                       set {
-                               parameters = value;
-                       }
-               }
-
-               public OdbcTransaction Transaction {
-                       get {
-                               return transaction;
-                       }
-                       set {
-                               transaction = value;
-                       }
-               }
-
-               public UpdateRowSource UpdatedRowSource { 
-                       [MonoTODO]
-                       get {
-                               throw new NotImplementedException ();
-                       }
-                       [MonoTODO]
-                       set {
-                               throw new NotImplementedException ();
-                       }
-               }
-
-               IDbConnection IDbCommand.Connection {
-                       get {
-                               return Connection;
-                       }
-                       set {
-                               Connection = (OdbcConnection) value;
-                       }
-               }
-
-               IDataParameterCollection IDbCommand.Parameters  {
-                       get {
-                               return Parameters;
-                       }
-               }
-
-               IDbTransaction IDbCommand.Transaction  {
-                       get {
-                               return (IDbTransaction) Transaction;
-                       }
-                       set {
-                               throw new NotImplementedException ();
-                       }
-               }
-
-               #endregion // Properties
-
-               #region Methods
-
-               public void Cancel () 
-               {
-                       if (hstmt!=IntPtr.Zero)
-                       {
-                               OdbcReturn Ret=libodbc.SQLCancel(hstmt);
+//\r
+// System.Data.Odbc.OdbcCommand\r
+//\r
+// Authors:\r
+//   Brian Ritchie (brianlritchie@hotmail.com)\r
+//\r
+// Copyright (C) Brian Ritchie, 2002\r
+//\r
+\r
+using System.ComponentModel;\r
+using System.Data;\r
+using System.Data.Common;\r
+using System.Collections;\r
+using System.Runtime.InteropServices;\r
+\r
+namespace System.Data.Odbc\r
+{\r
+       /// <summary>\r
+       /// Represents an SQL statement or stored procedure to execute against a data source.\r
+       /// </summary>\r
+       public sealed class OdbcCommand : Component, ICloneable, IDbCommand\r
+       {\r
+               #region Fields\r
+\r
+               string commandText;\r
+               int timeout;\r
+               CommandType commandType;\r
+               OdbcConnection connection;\r
+               OdbcParameterCollection parameters;\r
+               OdbcTransaction transaction;\r
+               bool designTimeVisible;\r
+               bool prepared=false;\r
+               OdbcDataReader dataReader;\r
+               public IntPtr hstmt;\r
+               \r
+               #endregion // Fields\r
+\r
+               #region Constructors\r
+\r
+               public OdbcCommand ()\r
+               {\r
+                       commandText = String.Empty;\r
+                       timeout = 30; // default timeout \r
+                       commandType = CommandType.Text;\r
+                       connection = null;\r
+                       parameters = new OdbcParameterCollection ();\r
+                       transaction = null;\r
+                       designTimeVisible = false;\r
+                       dataReader = null;\r
+               }\r
+\r
+               public OdbcCommand (string cmdText) : this ()\r
+               {\r
+                       CommandText = cmdText;\r
+               }\r
+\r
+               public OdbcCommand (string cmdText, OdbcConnection connection)\r
+                       : this (cmdText)\r
+               {\r
+                       Connection = connection;\r
+               }\r
+\r
+               public OdbcCommand (string cmdText,\r
+                                    OdbcConnection connection,\r
+                                    OdbcTransaction transaction) : this (cmdText, connection)\r
+               {\r
+                       this.transaction = transaction;\r
+               }\r
+\r
+               #endregion // Constructors\r
+\r
+               #region Properties\r
+\r
+               internal IntPtr hStmt\r
+               {\r
+                       get { return hstmt; }\r
+               }\r
+\r
+               public string CommandText \r
+               {\r
+                       get {\r
+                               return commandText;\r
+                       }\r
+                       set { \r
+                               prepared=false;\r
+                               commandText = value;\r
+                       }\r
+               }\r
+\r
+               public int CommandTimeout {\r
+                       get {\r
+                               return timeout;\r
+                       }\r
+                       set {\r
+                               timeout = value;\r
+                       }\r
+               }\r
+\r
+               public CommandType CommandType { \r
+                       get {\r
+                               return commandType;\r
+                       }\r
+                       set {\r
+                               commandType = value;\r
+                       }\r
+               }\r
+\r
+               public OdbcConnection Connection { \r
+                       get {\r
+                               return connection;\r
+                       }\r
+                       set {\r
+                               connection = value;\r
+                       }\r
+               }\r
+\r
+               public bool DesignTimeVisible { \r
+                       get {\r
+                               return designTimeVisible;\r
+                       }\r
+                       set {\r
+                               designTimeVisible = value;\r
+                       }\r
+               }\r
+\r
+               public OdbcParameterCollection Parameters {\r
+                       get {\r
+                               return parameters;\r
+                       }\r
+                       set {\r
+                               parameters = value;\r
+                       }\r
+               }\r
+\r
+               public OdbcTransaction Transaction {\r
+                       get {\r
+                               return transaction;\r
+                       }\r
+                       set {\r
+                               transaction = value;\r
+                       }\r
+               }\r
+\r
+               public UpdateRowSource UpdatedRowSource { \r
+                       [MonoTODO]\r
+                       get {\r
+                               throw new NotImplementedException ();\r
+                       }\r
+                       [MonoTODO]\r
+                       set {\r
+                               throw new NotImplementedException ();\r
+                       }\r
+               }\r
+\r
+               IDbConnection IDbCommand.Connection {\r
+                       get {\r
+                               return Connection;\r
+                       }\r
+                       set {\r
+                               Connection = (OdbcConnection) value;\r
+                       }\r
+               }\r
+\r
+               IDataParameterCollection IDbCommand.Parameters  {\r
+                       get {\r
+                               return Parameters;\r
+                       }\r
+               }\r
+\r
+               IDbTransaction IDbCommand.Transaction  {\r
+                       get {\r
+                               return (IDbTransaction) Transaction;\r
+                       }\r
+                       set {\r
+                               throw new NotImplementedException ();\r
+                       }\r
+               }\r
+\r
+               #endregion // Properties\r
+\r
+               #region Methods\r
+\r
+               public void Cancel () \r
+               {\r
+                       if (hstmt!=IntPtr.Zero)\r
+                       {\r
+                               OdbcReturn Ret=libodbc.SQLCancel(hstmt);\r
                                if ((Ret!=OdbcReturn.Success) && (Ret!=OdbcReturn.SuccessWithInfo)) \r
-                                       throw new OdbcException(new OdbcError("SQLCancel",OdbcHandleType.Stmt,hstmt));
-                       }
-                       else
-                               throw new InvalidOperationException();
-               }
-
-               public OdbcParameter CreateParameter ()
-               {
-                       return new OdbcParameter ();
-               }
-
-               IDbDataParameter IDbCommand.CreateParameter ()
-               {
-                       return CreateParameter ();
-               }
-               
-               [MonoTODO]
-               protected override void Dispose (bool disposing)
-               {
-               }
-               
-               private void ExecSQL(string sql)
-               {
-                       OdbcReturn ret;
-
-                       if ((parameters.Count>0) && !prepared)
-                               Prepare();
-       
-                       if (prepared)
-                       {
-                               ret=libodbc.SQLExecute(hstmt);
+                                       throw new OdbcException(new OdbcError("SQLCancel",OdbcHandleType.Stmt,hstmt));\r
+                       }\r
+                       else\r
+                               throw new InvalidOperationException();\r
+               }\r
+\r
+               public OdbcParameter CreateParameter ()\r
+               {\r
+                       return new OdbcParameter ();\r
+               }\r
+\r
+               IDbDataParameter IDbCommand.CreateParameter ()\r
+               {\r
+                       return CreateParameter ();\r
+               }\r
+               \r
+               [MonoTODO]\r
+               protected override void Dispose (bool disposing)\r
+               {\r
+               }\r
+               \r
+               private void ExecSQL(string sql)\r
+               {\r
+                       OdbcReturn ret;\r
+\r
+                       if ((parameters.Count>0) && !prepared)\r
+                               Prepare();\r
+       \r
+                       if (prepared)\r
+                       {\r
+                               ret=libodbc.SQLExecute(hstmt);\r
                                if ((ret!=OdbcReturn.Success) && (ret!=OdbcReturn.SuccessWithInfo)) \r
-                                       throw new OdbcException(new OdbcError("SQLExecute",OdbcHandleType.Stmt,hstmt));
-                       }
-                       else
-                       {
-                               ret=libodbc.SQLAllocHandle(OdbcHandleType.Stmt, Connection.hDbc, ref hstmt);
+                                       throw new OdbcException(new OdbcError("SQLExecute",OdbcHandleType.Stmt,hstmt));\r
+                       }\r
+                       else\r
+                       {\r
+                               ret=libodbc.SQLAllocHandle(OdbcHandleType.Stmt, Connection.hDbc, ref hstmt);\r
                                if ((ret!=OdbcReturn.Success) && (ret!=OdbcReturn.SuccessWithInfo)) \r
-                                       throw new OdbcException(new OdbcError("SQLAllocHandle",OdbcHandleType.Dbc,Connection.hDbc));
-
-                               ret=libodbc.SQLExecDirect(hstmt, sql, sql.Length);
+                                       throw new OdbcException(new OdbcError("SQLAllocHandle",OdbcHandleType.Dbc,Connection.hDbc));\r
+\r
+                               ret=libodbc.SQLExecDirect(hstmt, sql, sql.Length);\r
                                if ((ret!=OdbcReturn.Success) && (ret!=OdbcReturn.SuccessWithInfo)) \r
-                                       throw new OdbcException(new OdbcError("SQLExecDirect",OdbcHandleType.Stmt,hstmt));
-                       }
-               }
-
-               public int ExecuteNonQuery ()
-               {
-                       if (connection == null)
-                               throw new InvalidOperationException ();
-                       if (connection.State == ConnectionState.Closed)
-                               throw new InvalidOperationException ();
-                       // FIXME: a third check is mentioned in .NET docs
-                       if (connection.DataReader != null)
-                               throw new InvalidOperationException ();
-
-                       ExecSQL(CommandText);
-
-//                     if (!prepared)
-//                             libodbc.SQLFreeHandle( (ushort) OdbcHandleType.Stmt, hstmt);
-                       return 0;
-               }
-
-               public void Prepare()
-               {
-                       OdbcReturn ret=libodbc.SQLAllocHandle(OdbcHandleType.Stmt, Connection.hDbc, ref hstmt);
+                                       throw new OdbcException(new OdbcError("SQLExecDirect",OdbcHandleType.Stmt,hstmt));\r
+                       }\r
+               }\r
+\r
+               public int ExecuteNonQuery ()\r
+               {\r
+                       if (connection == null)\r
+                               throw new InvalidOperationException ();\r
+                       if (connection.State == ConnectionState.Closed)\r
+                               throw new InvalidOperationException ();\r
+                       // FIXME: a third check is mentioned in .NET docs\r
+                       if (connection.DataReader != null)\r
+                               throw new InvalidOperationException ();\r
+\r
+                       ExecSQL(CommandText);\r
+\r
+//                     if (!prepared)\r
+//                             libodbc.SQLFreeHandle( (ushort) OdbcHandleType.Stmt, hstmt);\r
+                       return 0;\r
+               }\r
+\r
+               public void Prepare()\r
+               {\r
+                       OdbcReturn ret=libodbc.SQLAllocHandle(OdbcHandleType.Stmt, Connection.hDbc, ref hstmt);\r
                        if ((ret!=OdbcReturn.Success) && (ret!=OdbcReturn.SuccessWithInfo)) \r
-                               throw new OdbcException(new OdbcError("SQLAllocHandle",OdbcHandleType.Dbc,Connection.hDbc));
-
-                       ret=libodbc.SQLPrepare(hstmt, CommandText, CommandText.Length);
+                               throw new OdbcException(new OdbcError("SQLAllocHandle",OdbcHandleType.Dbc,Connection.hDbc));\r
+\r
+                       ret=libodbc.SQLPrepare(hstmt, CommandText, CommandText.Length);\r
                        if ((ret!=OdbcReturn.Success) && (ret!=OdbcReturn.SuccessWithInfo)) \r
-                               throw new OdbcException(new OdbcError("SQLPrepare",OdbcHandleType.Stmt,hstmt));
-
-                       int i=1;
-                       foreach (OdbcParameter p in parameters)
-                       {
-                               p.Bind(hstmt, i);
-                               i++;
-                       }
-
-                       prepared=true;
-               }
-
-               public OdbcDataReader ExecuteReader ()
-               {
-                       return ExecuteReader (CommandBehavior.Default);
-               }
-
-               IDataReader IDbCommand.ExecuteReader ()
-               {
-                       return ExecuteReader ();
-               }
-
-               public OdbcDataReader ExecuteReader (CommandBehavior behavior)
-               {
-                       ExecuteNonQuery();
-                       dataReader=new OdbcDataReader(this,behavior);
-                       return dataReader;
-               }
-
-               IDataReader IDbCommand.ExecuteReader (CommandBehavior behavior)
-               {
-                       return ExecuteReader (behavior);
-               }
-               
-               public object ExecuteScalar ()
-               {
-                       if (connection.DataReader != null)
-                               throw new InvalidOperationException ();
-                       object val;
-                       OdbcDataReader reader=ExecuteReader();
-                       try
-                       {
-                               val=reader[0];
-                       }
-                       finally
-                       {
-                               reader.Close();
-                       }
-                       return val;
-               }
-
-               [MonoTODO]
-               object ICloneable.Clone ()
-               {
-                       throw new NotImplementedException ();   
-               }
-
-               public void ResetCommandTimeout ()
-               {
-                       timeout = 30;
-               }
-
-               #endregion
-       }
-}
+                               throw new OdbcException(new OdbcError("SQLPrepare",OdbcHandleType.Stmt,hstmt));\r
+\r
+                       int i=1;\r
+                       foreach (OdbcParameter p in parameters)\r
+                       {\r
+                               p.Bind(hstmt, i);\r
+                               i++;\r
+                       }\r
+\r
+                       prepared=true;\r
+               }\r
+\r
+               public OdbcDataReader ExecuteReader ()\r
+               {\r
+                       return ExecuteReader (CommandBehavior.Default);\r
+               }\r
+\r
+               IDataReader IDbCommand.ExecuteReader ()\r
+               {\r
+                       return ExecuteReader ();\r
+               }\r
+\r
+               public OdbcDataReader ExecuteReader (CommandBehavior behavior)\r
+               {\r
+                       ExecuteNonQuery();\r
+                       dataReader=new OdbcDataReader(this,behavior);\r
+                       return dataReader;\r
+               }\r
+\r
+               IDataReader IDbCommand.ExecuteReader (CommandBehavior behavior)\r
+               {\r
+                       return ExecuteReader (behavior);\r
+               }\r
+               \r
+               public object ExecuteScalar ()\r
+               {\r
+                       if (connection.DataReader != null)\r
+                               throw new InvalidOperationException ();\r
+                       object val;\r
+                       OdbcDataReader reader=ExecuteReader();\r
+                       try\r
+                       {\r
+                               val=reader[0];\r
+                       }\r
+                       finally\r
+                       {\r
+                               reader.Close();\r
+                       }\r
+                       return val;\r
+               }\r
+\r
+               [MonoTODO]\r
+               object ICloneable.Clone ()\r
+               {\r
+                       throw new NotImplementedException ();   \r
+               }\r
+\r
+               public void ResetCommandTimeout ()\r
+               {\r
+                       timeout = 30;\r
+               }\r
+\r
+               #endregion\r
+       }\r
+}\r