1 2008-08-26 Veerapuram Varadhan <vvaradhan@novell.com>
3 Patch provided by Ernesto <equistango@gmail.com>
4 * OdbcDataReader.cs: Don't call GetSchemaTable in the constructor
5 instead just get column information. Enhances performance of
8 2008-08-26 Veerapuram Varadhan <vvaradhan@novell.com>
10 Patch provided by Ernesto <equistango@gmail.com>
11 * OdbcParameter.cs (CopyValue): Handle Binary type along with
14 2008-07-06 Sebastien Pouliot <sebastien@ximian.com>
16 * OdbcDataReader.cs: Fix unneeded self-assignment for 'length'. Also
17 fix a bad setter where "value = behavior" instead of "behavior = value"
18 [Found using Gendarme ReviewSelfAssignmentRule]
20 2008-04-21 Gert Driesen <drieseng@users.sourceforge.net>
22 * OdbcParameterCollection.cs: Changed argument names to match MS.
25 2008-03-24 Gert Driesen <drieseng@users.sourceforge.net>
27 * OdbcTransaction.cs: Use internal CreateOdbcException method on
28 OdbcConnection to create OdbcException.
29 * OdbcException.cs: Added support for multiple OdbcError instances
30 and fixed Message property on 2.0 profile.
31 * OdbcCommand.cs: Use internal CreateOdbcException method on
32 OdbcConnection to create OdbcException. Code formatting.
33 * OdbcError.cs: Moved code to obtain ODBC error info to newly
34 introduced CreateOdbcException on OdbcConnection. Code formatting.
35 * OdbcDataReader.cs: Use internal CreateOdbcException method on
36 OdbcTransaction to create OdbcException.
37 * OdbcParameterCollection.cs: Removed obsolete Bind method.
38 * OdbcConnection.cs: Added SafeDriver property that returns
39 name of driver if available and a zero-length string otherwise.
40 Use CreateOdbcException method to create OdbcException from ODBC
41 error info. Added CreateOdbcException method to construct
42 OdbcException from all available ODBC error info.
43 * OdbcParameter.cs: Use internal CreateOdbcException method on
44 OdbcConnection to create OdbcException.
46 2008-03-23 Gert Driesen <drieseng@users.sourceforge.net>
48 * OdbcErrorCollection.cs: Corcompare fixes and code formatting.
49 * OdbcCommandBuilder.cs: Corcompare fixes and code formatting.
50 * OdbcPermission.cs: Corcompare fixes and code formatting.
51 * OdbcDataReader.cs: Corcompare fixes and code formatting.
52 * OdbcParameterCollection.cs: Corcompare fixes and code formatting.
53 * OdbcConnection.cs: Corcompare fixes and code formatting. Use
54 unicode encoding in ChangeDatabase and GetInfo.
55 * OdbcDataAdapter.cs: Corcompare fixes and code formatting.
56 * OdbcParameter.cs: Corcompare fixes and code formatting.
58 2008-03-21 Gert Driesen <drieseng@users.sourceforge.net>
60 * libodbc.cs: Always use unicode version of ODBC functions. Fixes part
62 * OdbcTypeMap.cs: Fixed mapping for NChar, NText and NVarChar.
63 * OdbcDataReader.cs (GetColumn): Use Unicode encoding to decode
65 (GetDataTypeName): Use SQLColAttribute to determine type name of
67 (GetValue): Fixed retrieving value of nchar column. When retrieving
68 variable length unicode value, use Unicode encoding to decode buffer
69 and remove trailing null characters. Fixes bug #364430.
71 2008-03-03 Veerapuram Varadhan <vvaradhan@novell.com>
74 * OdbcDataReader (GetString): Use Convert.ToString() to return
75 appropriate typed values.
76 (GetValue): Fixes a regression.
78 2008-03-03 Veerapuram Varadhan <vvaradhan@novell.com>
80 * OdbcCommandBuilder.cs: Clean up.
82 2008-03-03 Veerapuram Varadhan <vvaradhan@novell.com>
84 ** Fixes Bug#340451 - patch provided by Ernesto Carrea
85 <equistango@gmail.com>
86 * OdbcConnection.cs (GetInfo): Trim the value to actual length
89 2008-03-03 Veerapuram Varadhan <vvaradhan@novell.com>
91 ** Fixes from BNC#332809 - patch provided by Ernesto Carrea
92 <equistango@gmail.com>
93 * OdbcParameter.cs (Bind): Do not allocate buffer if value is
95 * OdbcTypeConverter.cs (InferFromValue): Incase of DBNull, do not
96 throw exception, instead return NVarChar to match MS.NET
99 2008-03-03 Ankit Jain <jankit@novell.com>
101 * OdbcMetaDataCollectionNames.cs: Set the field values.
103 2008-02-26 Veerapuram Varadhan <vvaradhan@novell.com>
106 * OdbcParameter.cs: (Bind): Set StrLen parameter of
107 SQLBindParameter to reflect NullData in case of DBNull.
108 (CopyValue): If Value is DBNull.Value, just don't try any
111 2008-02-25 Veerapuram Varadhan <vvaradhan@novell.com>
114 * OdbcDataReader.cs: (GetValue): Map OdbcType.Time to
117 * OdbcTypeConverter.cs: (GetTypeMap): Map OdbcType.Time and
118 SqlType.TIME to corresponding types.
120 * OdbcColumn.cs: -- ditto --
122 2008-02-20 Veerapuram Varadhan <vvaradhan@novell.com>
124 * OdbcDataReader.cs: (GetValue): Handle cases when certain
125 ODBC drivers return unexpected results. Fixes #326740. Patch
126 provided by Mark Junker <mjscod@gmx.de>.
128 2008-01-16 Veerapuram Varadhan <vvaradhan@novell.com>
130 * OdbcCommandBuilder.cs: Implemented 2.0 APIs and code
133 2007-10-28 Gert Driesen <drieseng@users.sourceforge.net>
135 * OdbcDataReader.cs: Code formatting, spaces to tabs.
137 2007-10-20 Gert Driesen <drieseng@users.sourceforge.net>
139 * OdbcCommand.cs: Added constant for default CommandTimeout, instead
140 of using a magic number. Avoid unnecessary initialization. Fixed
141 default value for DesignTimeVisible. Return zero-length string if
142 CommandText is null. Spaces to tabs and code formatting.
143 * OdbcError.cs: Fixed typo in exception message.
144 * OdbcConnection.cs: Return zero-length string if ConnectionString is
145 null. In getters for Database, DataSource and Driver return a
146 zero-length string if connection is closed. In BeginTransaction and
147 GetSchema throw InvalidOperationException if connection is closed.
148 Added override for GetSchema (string, string []). Use string.Empty
150 * OdbcDataAdapter.cs: Avoid unnecessary initializations. Use direct
151 assignment in IDbDataAdapter implementation. In default ctor, set
152 SelectCommand to null.
154 2007-10-19 Gert Driesen <drieseng@users.sourceforge.net>
156 * OdbcTransaction.cs: Clear connection in Commit and Rollback.
157 In IsolationLevel, throw IOE if transaction is no longer open.
159 2007-10-19 Gert Driesen <drieseng@users.sourceforge.net>
161 * OdbcTransaction.cs: Keep state of the transaction, and update it
162 when performing commit or rollback. In Dispose (bool), only perform
163 a rollback if transaction was not committed or rollback before.
164 In Commit and Rollback, throw an InvalidOperationException if
165 transaction is no longer open.
167 2007-10-19 Gert Driesen <drieseng@users.sourceforge.net>
169 * OdbcTransaction.cs: Use OdbcIsolationLevel enum value instead of
170 magic numbers. For Snapshot isolation level, the attribute
171 SQL_COPT_SS_TXN_ISOLATION must be used instead. When isolation level
172 is Unspecified, then do not modify the isolation level at all and
173 lazy initlization the IsolationLevel property. Modified exceptions
174 for invalid / not supported isolation levels to match MS.
175 * libodbc.cs: Added attribute for changing SQL Server specific
176 connection option. Added enum for ODBC isolation level options.
177 Added SQLGetConnectAttr method.
179 2007-10-19 Gert Driesen <drieseng@users.sourceforge.net>
181 * libodbc.cs: Spaces to tabs. Code formatting.
182 * OdbcConnection.cs: Spaces to tabs. Code formatting.
183 * OdbcTransaction.cs: Code formatting.
185 2007-10-19 Nagappan <anagappan@novell.com>
187 * OdbcCommandBuilder.cs, OdbcParameterCollection.cs: Code alignment.
188 * OdbcDataReader.cs: Fixes numeric columns, bug # 332404.
190 2007-10-19 Nagappan <anagappan@novell.com>
192 * OdbcCommand.cs: (Clone): Implemented new method. Code alignment.
194 2007-10-12 Nagappan <anagappan@novell.com>
196 * OdbcDataReader.cs: Bug 332400 - ODBC and LONGBLOB columns. Thanks to
197 Ernesto Carrea <equistango@gmail.com> for the patch and the test case.
199 2007-10-08 Marek Safar <marek.safar@gmail.com>
201 * OdbcParameterCollection.cs (SetParameter): Fixed missing cast.
203 2007-09-27 Nagappan A <anagappan@novell.com>
205 * OdbcTransaction.cs: AutoCommit and BeginTransaction fix. Thanks to
206 Mads Bondo Dydensborg <mbd@dbc.dk> and Amc <amc1999@gmail.com> for
207 providing this patch.
209 2007-09-25 Nagappan A <anagappan@novell.com>
211 * OdbcParameter.cs (ResetOdbcType, ResetDbType): Implemented
212 missing methods. 2.0 attribute fixes.
214 * OdbcInfoMessageEventArgs.cs (Message, Errors, ToString):
215 Implemented missing properties and methods. 2.0 attribute fixes.
217 * OdbcConnection.cs (InfoMessage): Added public event and relevant
218 private APIs. 2.0 attribute fixes.
220 * OdbcConnectionStringBuilder.cs: 2.0 attribute fixes.
222 * OdbcParameterCollection.cs (GetParameter, SetParameter):
223 Implemented missing 2.0 APIs and 2.0 attribute fixes.
225 * OdbcDataReader.cs (finalize): 2.0 compatibility fixes.
227 * OdbcPermission.cs (Add): 2.0 compatibility fixes.
229 * OdbcCommandBuilder.cs: 2.0 attribute fixes.
231 * OdbcRowUpdatingEventArgs.cs (BaseCommand): Added 2.0 property.
233 * OdbcCommand.cs: 2.0 attribute fixes.
235 * OdbcException.cs: 2.0 attribute fixes.
237 2007-09-11 AMC <amc1999@gmail.com>
239 * OdbcDataReader.cs (GetPrimaryKeys): ODBC data reader can now
240 properly handle "no-primary-keys" situation. Fixes bug # 82560.
242 2007-09-11 Nagappan A <anagappan@novell.com>
244 * OdbcConnectionStringBuilder.cs: Fixed Dsn DisplayName attribute.
246 2007-08-13 Nagappan A <anagappan@novell.com>
248 * OdbcMetaDataColumnNames.cs: Added new class.
250 * OdbcMetaDataCollectionNames.cs: Added new class.
252 * OdbcParameter.cs: 2.0 compatibility changes.
254 * OdbcFactory.cs (CreateConnectionStringBuilder)
255 (CreatePermission): Implemented new methods.
257 * OdbcInfoMessageEventHandler.cs: 2.0 compatibility changes.
259 * OdbcConnection.cs: 2.0 compatibility changes.
260 (GetSchema): Added new overloaded methods.
262 * OdbcConnectionStringBuilder.cs (Driver, Dsn): Added attributes
263 as per 2.0 requirement.
265 * OdbcDataReader.cs: 2.0 compatibility changes.
267 * OdbcCommandBuilder.cs: 2.0 compatibility changes.
269 * OdbcCommand.cs: 2.0 compatibility changes.
271 * OdbcErrorCollection.cs (CopyTo): Implemented new overloaded
274 * OdbcException.cs: In 2.0 DbException should be inherited instead
277 2007-07-31 Nagappan A <anagappan@novell.com>
279 * OdbcCommand.cs (ExecSQL): Thanks to amc1999@gmail.com (amc) for
280 providing the patch, Fixes bug # 82135. ODBC SQLExecDirect
281 error. Delete where no-data-found fails.
283 * OdbcCommandBuilder.cs: Removed bogus TODO.
284 Fixed 2.0 missing attributes
286 * libodbc.cs: Added new libodbc global constant SQL_NTS.
288 * OdbcCommand.cs (ExecSQL): Thanks to amc1999@gmail.com (amc) for
289 providing the patch, Fixes bug # 82191. ODBC command UTF8
290 error. SQL failed with UTF8 symbols in query.
292 Fixed 2.0 missing attributes
294 2007-07-22 Nagappan A <anagappan@novell.com>
296 * OdbcDataAdapter.cs: Fixed compilation warning.
298 * OdbcTransaction.cs: Fixed compilation warning.
300 2007-06-30 Gert Driesen <drieseng@users.sourceforge.net>
302 * OdbcDataAdapter.cs: Only override Dispose on 1.0 profile. Added
303 stub for ICloneable.Clone.
304 * OdbcTransaction.cs: Dispose should be explicit interface impl., not
305 public. Connection is also public on 2.0 profile.
307 2007-06-21 Nagappan A <anagappan@novell.com>
309 * OdbcConnectionStringBuilder.cs: Added new file with the basic
310 work of Nidhi Rawal (rawalnidhi_rawal@yahoo.com).
312 * OdbcDataReader.cs (GetValue): Patch for varchar longer than 255
313 characters, by Mads Bondo Dydensborg <mbd@dbc.dk>.
315 * OdbcConnection.cs: Fixed compiler warning.
317 2007-06-06 Amit Biswas <amit@amitbiswas.com>
319 * OdbcParameter.cs (OdbcParameter ()): Changed default values in the constructor
321 * OdbcParameterCollection.cs (AddRange (Array values)): Implemented missing method
322 (Add): Corrected bug related to default parameter names
323 (Insert): Added check for valid index values
324 (Contains): Corrected bug for case sensitivity
325 (IndexOf): Corrected bug for case sensitivity
326 (IndexOf): Corrected bug in comparing parameter names
327 (Remove): Added check for non existing parameters
328 (AddRange (OdbcParameter): Implemented missing method
329 (AddRange (Array values): Implemented missing method
330 (Insert (int index, OdbcParameter value)): Implemented missing method
331 (Insert (int index, object value)): Implemented missing method
332 (AddWithValue (string parameterName, Object value)): Implemented missing method
333 (Remove (OdbcParameter value)): Implemented missing method
334 (Contains (OdbcParameter value)): Implemented missing method
335 (CopyTo (OdbcParameter [] array, int index)): Implemented missing method
337 2007-05-30 Nagappan A <anagappan@novell.com>
339 * OdbcDataReader.cs (GetValue): Adds nano seconds as tickcs from
342 2007-05-25 Nagappan A <anagappan@novell.com>
344 * OdbcDataReader.cs (GetValue): Sybase returns the fraction values
345 in nano seconds, but DateTime expects the value in milliseconds,
348 2007-05-04 Nagappan A <anagappan@novell.com>
350 * libodbc.cs: Wrong ODBC API definitions (using ints instead of
351 shorts) - Fixes bug 81306. Thanks to will.mooar@tait.co.nz and
354 * OdbcDataReader.cs: Wrong ODBC API definitions (using ints
355 instead of shorts) - Fixes bug 81306. Thanks to
356 will.mooar@tait.co.nz and tausq@debian.org.
358 2007-02-09 Nagappan A <anagappan@novell.com>
360 * OdbcDataReader.cs (GetDecimal): Implemented new API.
362 2007-01-08 Nagappan A <anagappan@novell.com>
364 * OdbcFactory.cs: Fixed compilation warning.
366 * OdbcCategoryAttribute.cs (Category): Implemented missing
369 * OdbcParameterCollection.cs: Fixed compilation warning.
371 * OdbcCommandBuilder.cs (GetInsertCommand, GetUpdateCommand)
372 (GetDeleteCommand): Implemented overloaded method.
374 * OdbcTransaction.cs: Modified partial content of DOS format file
377 2006-07-13 Senganal T <tsenganal@novell.com>
379 * OdbcTransaction.cs OdbcCommand.cs OdbcConnectionFactory.cs
380 OdbcPermission.cs OdbcDataReader.cs OdbcParameterCollection.cs
381 OdbcConnection.cs OdbcFactory.cs OdbcParameter.cs :
384 2006-05-31 Gert Driesen <drieseng@users.sourceforge.net>
386 * OdbcErrorCollection.cs: Removed explicit interface implementation
387 of IEnumerable.GetEnumerator ().
388 * OdbcCommand.cs: Removed destructor as the destructor in
389 System.ComponentModel.Component already calls the Dispose method.
390 Removed explicit interface implemenation of members that are
391 implement by public members.
392 * OdbcDataReader.cs: Removed explicit interface implemenation of
395 2006-05-24 Senganal T <tsenganal@novell.com>
398 - Added IsVariableSizeType : Handle types with variable datasize
399 * OdbcTypeConverter.cs : map LongVarBinary to Image
400 * OdbcDataReader.cs :
401 - GetValue () : Handle Text,Image datatypes differently. Only allocate
402 storage for the data contained and not for MaxLength. Fixes #78234
404 2006-05-09 Senganal T <tsenganal@novell.com>
406 * OdbcConnection.cs : Implemented ChangeDatabase Method
407 * libodbc.cs : Added value for CurrentCatalog in OdbcConnectionAttribute
409 2006-02-17 Chris Toshok <toshok@ximian.com>
411 * OdbcDataReader.cs: remove VisibleFieldCount property.
413 2005-11-21 Senganal T <tsenganal@novell.com>
416 * OdbcCommandBuilder.cs
417 * OdbcParameterCollection.cs
423 Added stubs and other changes for ADO.NET 2.0 compatibility
425 2005-10-14 Senganal T <tsenganal@novell.com>
427 * OdbcColumn.cs : Changed the mapping of OdbcType.Char to string
428 instead of char. Fixes bug #67269
430 2005-10-14 Senganal T <tsenganal@novell.com>
432 * OdbcDataReader.cs: Added Text and NText datatypes to the list
433 of datatypes checked by GetValue () method. Fixes bug #75032
435 2005-10-14 Sureshkumar T <tsureshkumar@novell.com>
437 * OdbcDataReader.cs (GetValue): Use SQL_CHAR for Numeric as
440 * OdbcParameter.cs (CopyValue): Add support for Numeric & Decimal
443 2005-10-08 Sureshkumar T <tsureshkumar@novell.com>
445 * OdbcCommand.cs (BindParameters): Copy the parameter Value after
448 * OdbcParameter.cs: re-implemented the native buffer handling and
451 * NativeBuffer.cs: A native buffer class to hold pointer to native
454 * OdbcTypeMap.cs (OdbcTypeMap): structure to hold different odbc
455 types and the default mapping.
457 * OdbcTypeConverter.cs: Simplified mapping between different odbc
458 types using switch-case.
460 * libodbc.cs (SQLBindParameter): use only one entry point and use
461 IntPtr instead of ref.
463 2005-08-20 Gert Driesen <drieseng@users.sourceforge.net>
465 * OdbcDataReader.cs: Marked GetPrimaryKeysBySQLStatistics unsafe.
466 This fixes the build on Windows (using csc).
468 2005-08-09 Sureshkumar T <tsureshkumar@novell.com>
470 * OdbcDataReader.cs: GetSchemaTable (): set values for the column
471 attributes using SQLColAttribute. If SQLPrimaryKeys does not
472 yeild, try SQLStatistics. Optimized primary key logic.
474 * libodbc.cs: Added api SQLStatistics and constants.
476 * OdbcParameter.cs: setBuffer (): allocate a short int buffer for
477 OdbcType.SmallInt. fixes bug #75600.
479 2005-08-08 Gert Driesen <drieseng@users.sourceforge.net>
481 * OdbcConnection.cs: Marked Init helper method private.
482 * OdbcCommand.cs: Marked BindParameters helper method private.
484 2005-08-08 Sureshkumar T <tsureshkumar@novell.com>
486 * OdbcDataReader.cs: Implemented Dispose pattern. Cache
487 schematable for same result set. don't free command's statements
488 if the command is prepared.
490 * OdbcConnection.cs: Open (): set disposed to false so that close
491 will be called in Dispose.
494 - Prepare (): Split SQLPrepare and SQLBind so that
495 already prepared statements can be reused with new parameter
497 - ExecSQL (): create new statement handle, if not prepared
498 and there are no parameters. if there are parameters, prepare and
500 - Implemented Dispose pattern
501 - Streamlined the allocation and de-allocation of statement
504 2005-08-05 Sureshkumar T <tsureshkumar@novell.com>
506 * OdbcDataReader.cs: RecordsAffected: get value from command.
507 GetSchemaTable (): set IsExpression based on BaseTableName. set
508 AllowDBNull to false if the column is PK.
510 * OdbcCommand.cs: correct UpdatedRowSource is returned. whitespace
511 changes to conform to standard.
513 * OdbcCommandBuilder.cs: Implemented.
515 * OdbcParameter.cs: Direction is set to Input by default.
517 2005-07-22 Sureshkumar T <tsureshkumar@novell.com>
519 * OdbcParameter.cs: updated attributes & attribute descriptions to
520 match with masterinfos.
522 * OdbcDataReader.cs: NextRow (): made private.
524 2005-07-21 Sureshkumar T <tsureshkumar@novell.com>
526 * OdbcDataReader.cs: GetValue (): added case for OdbcType.Bit. and
527 Formatting corrections. Fixes bug #75574.
529 2005-07-07 Sureshkumar T <tsureshkumar@novell.com>
531 * OdbcTypeConverter.cs: ConvertToSqlType & ConvertToSqlCType: map
532 VarChar to SQL_C_CHAR and SQL_VARCHAR respective instead of WCHAR
533 and WVARCHAR as temporary fix.
535 * OdbcParameter.cs: setBuffer: string types need not be quoted.
537 2005-06-28 Sureshkumar T <tsureshkumar@novell.com>
539 * OdbcDataReader.cs: GetPrimaryKeys (): use the length indicator
540 for GetString, otherwise, it creates a string of length 255. Use
541 ArrayList for keys as the columns are different from the selected
542 columns. fixes bug #75263.
544 2005-06-09 Sureshkumar T <tsureshkumar@novell.com>
546 * OdbcDataReader.cs: GetValue (): return decimal in case of odbc
547 type Numeric. Move the temp buffer logic inside.
549 * OdbcTypeConverter.cs: map SQL_TYPE.NUMERIC to SQL_C_TYPE.CHAR by
550 now, since PgSql driver seems not to accept NUMERIC c type. Other
551 database anyway, provides NUMERIC datatype as DECIMAL.
553 2005-05-31 Sureshkumar T <tsureshkumar@novell.com>
555 * OdbcParameter.cs: setBuffer (): for numeric type, the buffer
556 parameter should be a packed decimal struct. fixes bug #75041.
558 2005-04-05 Sureshkumar T <tsureshkumar@novell.com>
560 * OdbcParameter.cs: SqlBindParameter requires the last parameter
562 * libodbc.cs: API change for above.
564 2005-04-04 Sureshkumar T <tsureshkumar@novell.com>
566 * OdbcDataReader.cs: Ignore BaseTableName & BaseColumnName
567 properties while building Schema information as most drivers
568 ignores these properties. e.g. PostgreSQL.
570 2005-03-24 Sureshkumar T <tsureshkumar@novell.com>
571 Appasamy <appasamy@rediffmail.com>
573 * OdbcColumn.cs: IsStringType: OdbcType.Char is also of type
575 * OdbcDataReader.cs: GetSchemaTable: Get Additional info using
576 SQLColAttribute. Don't pad with spaces in GetColAttributeStr.
578 2005-03-24 Sureshkumar T <tsureshkumar@novell.com>
581 - GetValue: Decode only outsize length for SQL_C_TYPE.CHAR type in
583 - GetOrdinal: Perform case insensitive lookup if sensitive lookup
586 2005-03-22 Sureshkumar T <tsureshkumar@novell.com>
587 Appsamy <appasamy@rediffmail.com>
589 * libodbc.cs (System.Data.Odbc): Added enum FieldIdentifier. Added
590 library functions SQLPrimaryKeys, SQLBindCol and SQLColAttribute.
592 * OdbcDataReader.cs: Implemented GetPrimaryKeys to get the primary
593 keys associated with resultset using SQLPrimaryKeys.
595 2005-03-15 Sureshkumar T <tsureshkumar@novell.com>
597 * OdbcConnection.cs: re-throw error on exception in Open method.
599 2005-03-11 Sureshkumar T <tsureshkumar@novell.com>
601 * OdbcConnection.cs : notify state change through event. clean up
602 handles in case any exception while opening a connection. NET_2_0
603 uses base class's OnStateChange handler.
605 2005-03-10 Sureshkumar T <tsureshkumar@novell.com>
607 Migrated core classes to derive from ProviderBase instead of
608 implementing IDb* interfaces. Most part of these files have been
609 branched with #if NET_2_0/ONLY_1_1. Make sure any changes works
610 with both the profiles.
612 * OdbcFactory.cs: Concrete Factory for DbProviderFactory. Factory
613 to generate Connection,Command,etc.
615 * OdbcConnectionFactory.cs: Concrete factory for DbConnectionFactory.
617 * OdbcTransaction.cs: migration and overrides.
618 * OdbcCommandBuilder.cs: migration and overrides.
619 * OdbcDataReader.cs: --do--. no command behavior member as it will
620 be maintained in base provider class.
621 * OdbcParameterCollection.cs: --do--. Now, local ArrayList is not
622 maintained here, instead it is in base class. Most of the methods
623 which operated on this list are not needed in NET_2_0.
624 * OdbcConnection.cs: Migration. connectionString is maintained in
625 DbConnectionBase class.
626 * OdbcParameter.cs: Migration. Many of the local members like
627 value,sourceColumn are maintained in DbParameterBase.
628 * OdbcCommand.cs: Migration. commandText,timeout and
629 commandTimeOut are maintained in DbCommandBase class.
631 2005-03-10 Sureshkumar T <tsureshkumar@novell.com>
633 * OdbcType.cs: Added enums for SQL_TYPE & SQL_C_TYPE.
635 * libodbc.cs: Accept SQL_C_TYPE for driver
636 parameters. SQLBindParameter takes two parameters SQL_TYPE and
637 SQL_C_TYPE. This caused the whole lot of changes done in this
640 * OdbcParameter.cs: Set default values of OdbcType & DbType. Pass
641 mapped SQL_TYPE and SQL_C_TYPE to SQLBindParameter. Increase
642 buffer size by 2 for additional ' chars.
644 * OdbcTypeConverter.cs: Added class to convert between OdbcType,
645 SQL_TYPE, SQL_C_TYPE.
647 * OdbcColumn.cs: Added private members for SQL_TYPE and
648 SQL_C_TYPE. conversion from/to odbctype to/from SQL_TYPE is done
649 through OdbcTypeConverter class.
651 * OdbcDataReader.cs: use OdbcColumn's SQL_C_TYPE member. It keeps
652 track of default mapping between odbctype, SQL_TYPE and
653 SQL_C_TYPE. Move dataTableSchema.AcceptChanges inside if condition
654 to avoid null reference exception.
656 2005-02-04 Sureshkumar T <tsureshkumar@novell.com>
657 Appasamy <appasamy@rediffmail.com>
659 * OdbcConnection.cs: Implemented properties database, datasource,
660 serverversion and driver.
661 * libodbc.cs: Added type OdbcInfo and native call SQLGetInfo.
663 2005-01-20 Sureshkumar T <tsureshkumar@novell.com>
665 * OdbcDataReader.cs: case for type OdbcType.Double added in
666 GetValue. fixes bug #71173.
668 Thanks to patch given by "Appasamy T" <appasamy@rediffmail.com>
670 2005-01-19 Sureshkumar T <tsureshkumar@novell.com>
672 * OdbcType.cs: Change enum values for compatiability with MS.NET.
673 * libodbc.cs: Change enum values for compatiability with
674 MS.NET. Change calls into driver with native type.
675 * OdbcDataReader.cs: Change enum values for compatiability with
676 MS.NET. Change calls from/into driver with native type.
678 2005-01-18 Sureshkumar T <tsureshkumar@novell.com>
680 * OdbcDataReader.cs: GetOrdinal need not check for
681 currentRow. Return -1 if column name is not found.
683 fixes bug #71261. Thanks to patch given by "Appasamy T"
684 <appasamy@rediffmail.com>.
686 2005-01-13 Sureshkumar T <tsureshkumar@novell.com>
688 * OdbcDataReader.cs: Implement NextResultSet for multiple result
691 * OdbcDataReader.cs: build column schema once creating reader and
692 then for each Next result set. Thanks to
693 sebastien.robitaille@croesus.com (Sebastien Robitaille) for
694 pointing out this optimization (bugzilla #70530).
696 * libodbc.cs: Added library calls SQLFreeStmt and SQLMoreResults
697 for mutiple resultsets.
699 2005-01-10 Sureshkumar T <tsureshkumar@novell.com>
701 * OdbcDataReader.cs: Connection has to be closed only after
702 Statement handle is freed. fixes bug #70048.
704 2005-01-07 Sureshkumar T <tsureshkumar@novell.com>
706 * OdbcDataReader.cs: Pass OdbcCType.SignedBigInt for accessing big
709 * OdbcType.cs: Added a new enum for Odbc C DataTypes. This should
710 essentially be passed to drivers, since the public OdbcType types
711 differs from types expected in drivers in some cases.
713 * libodbc.cs : Added a ODBC method which takes OdbcCType
714 enumeration for SQLGetData for BigInt fields.
718 2004-12-28 Duncan Mak <duncan@ximian.com>
720 * libodbc.cs: Change all the DllImport attributes to point to
721 "odbc32.dll" instead of "odbc32", because /etc/mono/config lists
722 "odbc32.dll" (all other entries in the file have the .dll suffix
723 as well, for consistency's sake, let's rename it here.)
727 2004-12-03 Sureshkumar T <tsureshkumar@novell.com>
729 * OdbcParameter.cs: Fixed a null reference exception when a
730 parameter is created and its value is not set. #68750.
732 2004-11-26 Sureshkumar T <tsureshkumar@novell.com>
734 * OdbcParameter.cs: Fixed Parameter Size property as well as
735 insufficient buffer errors. bug #68749.
737 2004-09-14 Sebastien Pouliot <sebastien@ximian.com>
739 * OdbcPermission.cs: Added internal constructor accepting an Odbc
740 PermissionAttribute parameter (using base class protected ctor).
741 * OdbcPermissionAttribute.cs: Copy now use the new OdbcPermission
744 2004-09-13 Sebastien Pouliot <sebastien@ximian.com>
746 * OdbcPermission.cs: Mostly completed (needs tests).
747 * OdbcPermissionAttribute.cs: Completed.
749 2004-08-31 Umadevi S (sumadevi@novell.com)
750 * OdbcDataReader.cs - Fixed Decimal parsing
752 2004-08-30 Umadevi S (sumadevi@novell.com)
753 * OdbcType.cs - removed inheritance from short.
755 2004-08-27 Sureshkumar T (tsureshkumar@novell.com)
756 * OdbcDataReader.cs - fixed bug #63539 - TINYINT ODBC datatype is converted into System.Byte
758 2004-08-26 Sureshkumar T (tsureshkumar@novell.com)
759 * OdbcDataReader.cs - Date & DateTime GetValue fixed.
760 GetBytes ordinal parameter passing fixed for BINARY in GetValue.
762 2004-08-20 Sureshkumar T (tsureshkumar@novell.com)
763 * OdbcConnection.cs - correct handles are passed to OdbcError exception to trap the correct error
765 2004-08-04 Umadevi S (sumadevi@novell.com)
766 * OdbcDataReader.cs - Fixed bug 61832 - Column names were not filled, due to which name based lookup of columns failed.
769 2004-08-04 Umadevi S (sumadevi@novell.com)
770 * OdbcDataReader.cs - Fixed bug 61405 - Handling smallint column type.
772 2004-07-30 Sureshkumar T (tsureshkumar@novell.com)
773 * OdbcCommand.cs: ExecuteNonQuery Closed statement handle to fix memory leak
774 * OdbcDataReader.cs: Closed statement handle to fix memory leak
775 Removed SQLState login in GetBytes coz OdbcError provides the same.
777 2004-07-29 Umadevi S (sumadevi@novell.com)
778 * OdbcCommand.cs - Fixed bug 62046. ExecuteNonQuery implemented correctly
781 2004-07-28 Umadevi S (sumadevi@novell.com)
782 * OdbcParameter.cs - fixed bug 61968. String values passed with quotes
785 2004-07-07 Umadevi S (sumadevi@novell.com)
786 * OdbcConnection.cs - Allowed Close to be called multiple times
787 - Implementation of Dispose method
789 2004-07-07 Umadevi S (sumadevi@novell.com)
790 * OdbcCommand.cs : fixed set method for Transaction
792 2004-07-01 Sureshkumar T (tsureshkumar@novell.com)
793 * OdbcCommand.cs : fixed reader problem with ExecuteScalar
795 2004-06-23 Sureshkumar T (tsureshkumar@novell.com)
796 * OdbcConnection.cs: Fix: Moved env allocation to Open method.
797 Disconnection & freeing handles are done in Close
798 method to avoid simultaneous connections.
799 * libodbc.cs : Added constants for odbc version.
801 2004-06-16 Gert Driesen <drieseng@users.sourceforge.net>
803 * OdbcError.cs: fixed serialization compatibility with MS.NET
804 * OdbcErrorCollection.cs: fixed serialization compatibility with
806 * OdbcException.cs: fixed serialization compatibility with MS.NET
808 2004-06-16 Sureshkumar T (tsureshkumar@novell.com)
809 * OdbcDataReader.cs: Added GetValue support for Sql Binary type to return byte array.
810 Implemented GetBytes method.
811 * libodbc.cs : Added enums, constants & imports for above fix.
813 2004-06-13 Gert Driesen <drieseng@users.sourceforge.net>
815 * OdbcDataReader.cs: changed GetData method to return IDataReader
818 2004-06-09 Sureshkumar T (tsureshkumar@novell.com)
819 * OdbcDataReader.cs: Removed checking of currentRow in GetName
822 2004-06-04 Gert Driesen <drieseng@users.sourceforge.net>
824 * OdbcPermission.cs: moved Obsolete attribute to correct
827 2004-06-02 Sureshkumar T (tsureshkumar@novell.com)
829 * OdbcDataReader.cs: Implemented GetByte method. Fixed bug #58820
831 2004-06-02 Gert Driesen <drieseng@users.sourceforge.net>
833 * OdbcParameter.cs: added missing attributes
834 * OdbcPermission.cs: added missing attributes
835 * OdbcConnection.cs: fixes attribute, added missing attributes
836 * OdbcInfoMessageEventArgs.cs: removed extra properties, fixed
837 API compatibility with MS.NET
838 * OdbcCommandBuilder.cs: use correct attributes
840 2004-05-20 Gert Driesen (drieseng@users.sourceforge.net)
842 * OdbcPermissionAttribute.cs: change AllowMultiple and
843 Inherited to match .NET
845 2004-05-17 Umadevi S (sumadevi@novell.com)
846 * OdbcPermissionAttribute, OdbcPermission.cs - fixed missing methods
848 2004-05-17 Gert Driesen (drieseng@users.sourceforge.net)
849 * OdbcCategoryAttribute.cs: fixed namespace
850 * OdbcDataAdapter.cs: removed extra attributes
851 * OdbcDescriptionAttribute.cs: fixed namespace
853 2004-05-14 Umadevi S (sumadevi@novell.com)
854 * OdbcParameterConverter.cs -Added
855 * OdbcParameter.cs - Added some attributes
857 2004-05-14 Umadevi S (sumadevi@novell.com)
858 * OdbcDataAdapter.cs - Added Attributes
860 2004-05-14 Umadevi S (sumadevi@novell.com)
861 * OdbcConnection.cs - Added Attributes
863 2004-05-14 Umadevi S (sumadevi@novell.com)
864 * OdbcCommand.cs - Added Attributes
866 2004-05-14 Umadevi S (sumadevi@novell.com)
867 * OdbcDataReader.cs - Added Attributes
869 2004-05-14 Umadevi S (sumadevi@novell.com)
870 * Added Classes OdbcCategoryAttribute.cs, OdbcDescriptionAttribute.cs
872 2004-05-14 Umadevi S (sumadevi@novell.com)
873 * Added Class OdbcCommandBuilder.cs
875 2004-05-14 Umadevi S (sumadevi@novell.com)
876 * Added classes OdbcInfoMessageEventArgs.cs - with stubs
877 * Added classes OdbcInfoMessageEventInfo.cs
879 2004-05-14 Umadevi S (sumadevi@novell.com)
880 * Added classes OdbcPermission.cs, OdbcPermissionAttribute.cs - with stubs
882 2004-05-09 Gert Driesen (drieseng@users.sourceforge.net)
883 * OdbcException.cs : removed ErrorCode property, fixing signature
884 * OdbcErrorCollection.cs : added internal ctor, reduced
885 accessibility of Add method to internal
886 * OdbcCommand.cs: marked hstmt field private, remove setters for
888 * OdbcDataReader.cs: Added GetDate method, renamed GetTimeSpan to
889 GetTime to match MS.NET, added HasRows stub
891 2004-05-09 Gert Driesen (drieseng@users.sourceforge.net)
893 * OdbcErrorCollection.cs:
894 * OdbcException.cs: fixed linefeeds to DOS to match other
895 sources in System.Data.Odbc
897 2004-05-09 Gert Driesen (drieseng@users.sourceforge.net)
898 * OdbcCommand.cs: No longer use OdbcConnection.Datareader, in order
899 to fix signature of OdbcConnection
900 * OdbcDataReader.cs: No longer use ODbcConnection.Datareader, in
901 order to fix signature of OdbcConnection
902 * OdbcConnection.cs: Signature fixes: removed DataReader property,
903 added setter for ConnectionTimeout, made transaction internal
904 * OdbcParameter.cs: reduced accessibility of Bind method to
905 internal, added setter for IsNullable
906 * OdbcParameterCollection.cs: made default ctor and Bind method
909 2004-05-09 Gert Driesen (drieseng@users.sourceforge.net)
910 * OdbcCommand.cs: fixed linefeeds to DOS to match other sources
913 2004-05-09 Gert Driesen (drieseng@users.sourceforge.net)
914 * OdbcTransaction.cs: fixed signature to match MS.NET
916 2004-05-09 Gert Driesen (drieseng@users.sourceforge.net)
917 * OdbcType.cs: fixed typo UniqueIndetifier
918 * OdbcColumn.cs : fixed typo UniqueIndetifier
920 2004-05-09 Gert Driesen (drieseng@users.sourceforge.net)
921 * OdbcType.cs: fixed linefeeds to DOS to match other sources
924 2003-12-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
926 * OdbcTransaction.cs: applied patch from Jeff Seifert that makes
927 this class implement IDbTransaction interface.
929 2002-11-01 Daniel Morgan <danmorg@sc.rr.com>
931 * OdbcDataReader.cs: - uncommented code, but I put a FIXME:
932 according to Brian, this does not work on MS .NET however, we need it
933 for Mono for now. schemaRow.AcceptChanges(),
934 - implement IEnumerable.GetEnumerator()
936 * libodbc.cs: changed the DllImport from "odbc32.dll" to "odbc32"
938 2002-10-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
942 * OdbcException.cs: added dummy implementation for these missing