1 2010-07-23 Veerapuram Varadhan <v.varadhan@gmail.com>
3 ** Fixes #565616 - Based on Patch by Hubert FONGARNAND
4 * DataContainer.cs (GetContainerData): If typecode is string,
5 call Convert.ToString() irrespective of whether value is
8 2010-03-26 Veerapuram Varadhan <vvaradhan@novell.com>
10 ** Fixes #564833/580736
11 * DbDataAdapter.cs (*Command): Fix for .NET compatibility which
12 supports both type of adapters with/without discrete command
15 2009-10-28 Veerapuram Varadhan <vvaradhan@novell.com>
17 ** Fixes #385028/#385029
18 * DbCommandBuilder.cs (CreateInsertCommand): Workaround for inserting
19 DEFAULT values to non-null-columns.
20 (GetInsertCommand): New overload added to handle above workaround.
21 (set_DataAdapter): Register for the RowUpdatingEventHandlers.
23 2009-10-14 Jonathan Pryor <jpryor@novell.com>
25 * DbConnection.cs: Throw NotImplementedException fom
26 DbConnection.DbProviderFactory, as DbProviderFactories isn't
27 included in the MonoTouch profile.
29 2009-07-30 Veerapuram Varadhan <vvaradhan@novell.com>
31 * DbDataAdapter.cs (IDbDataAdapter.get_*Command): For non 2.0 profile, do not
32 implement these properties and related changes.
34 2009-07-30 Veerapuram Varadhan <vvaradhan@novell.com>
36 * DbDataAdapter.cs (set_DeleteCommand): Code cleanup.
38 2009-07-29 Veerapuram Varadhan <vvaradhan@novell.com>
40 * DbDataAdapter.cs (*Command properties): Don't call IDbDataAdapter.*Command,
41 as provider specific DbDataAdapters would have its own implementation.
43 2009-07-27 Veerapuram Varadhan <vvaradhan@novell.com>
45 * DbCommandBuilder.cs (CreateUpdateCommand): Don't set Nullable
46 property "Original_*" fields.
48 2009-07-24 Veerapuram Varadhan <vvaradhan@novell.com>
50 * DbCommandBuilder.cs (Create*Command): Fill up the missing pieces from
51 SqlCommandBuilder version of Create*Commands that fixes the failing tests.
53 2009-07-24 Veerapuram Varadhan <vvaradhan@novell.com>
55 * DbCommandBuilder.cs (CreateDeleteCommand, CreateUpdateCommand): Add the
56 nullcheck-param into the respective command's parameter list. Fixes
57 build breaks. Individual provider's CommandBuilder classes from 2.0
58 profile onwards use the base version of methods to maintain these commands.
59 (Get*Command): Cleanup code duplication
60 * DbDataAdapter (Update): Use SourceColumnNullMapping property to handle
61 nullcheckparams. Fixes #522624. Patch by
62 Gert Driesen <drieseng@users.sourceforge.net>.
64 2009-07-15 Veerapuram Varadhan <vvaradhan@novell.com>
66 ** Part of fix for #325464
67 * DbParameter.cs (FrameworkDbType, DbTypeMapping, SystemType): New internal properties
68 required to convert between DbType/FrameworkType/SystemType.
70 2009-05-10 Marek Habersack <mhabersack@novell.com>
72 * DbConnection.cs: implemented the DbProviderFactory property
74 2009-03-31 Veerapuram Varadhan <vvaradhan@novell.com>
76 * Fixes rest of #480377
77 * DataContainer.cs (GetContainerData, GetExplicitValue): Added to handle cases
78 where passed type overloads an explicit operator for conversion of values.
80 2009-01-03 Gert Driesen <drieseng@users.sourceforge.net>
82 * DbCommandBuilder.cs (QuoteIdentifier): Throw NotSupportedException.
83 * DbDataAdapter.cs (Update): Add row causing concurrency violation
84 to DBConcurrencyException.
86 2008-12-30 Raja R Harinath <harinath@hurrynot.org>
88 Mildly rewrite duplicate-inferring logic.
89 * Index.cs (IndexDuplicateState): Remove.
90 (_hasDuplicates): Remove. Replace by ...
91 (know_have_duplicates, know_no_duplicates): ... these.
93 2008-12-30 Gert Driesen <drieseng@users.sourceforge.net>
95 * DbCommandBuilder.cs: When CatalogSeparator or SchemaSeparator are
96 not set (or explicitly set to null or empty string), then return
97 default separator character. Added value check for CatalogLocation and
98 ConflictOption. Removed regions.
100 2008-12-30 Gert Driesen <drieseng@users.sourceforge.net>
102 * DbCommandBuilder.cs: Fixed default value for ConflicOption.
104 2008-12-30 Gert Driesen <drieseng@users.sourceforge.net>
106 * DbCommandBuilder.cs: Return a zero-length string when QuotePrefix or
107 QuoteSuffix are not set (or are set to null). Changing QuotePrefix or
108 QuoteSuffix after a command has been generated should result in an
109 InvalidOperationException.
110 * DbConnectionStringBuilder.cs: Added support for ODBC rules. Major
111 rewrite fixing many compatibility issues, and improving support for
112 connectionstring formats/characters.
114 2008-11-25 Atsushi Enomoto <atsushi@ximian.com>
116 * DbDataRecord.cs : it is abstract, so create different impl. class.
117 * DbEnumerator.cs : use above.
119 2008-11-17 Raja R Harinath <harinath@hurrynot.org>
121 Avoid allocating empty arrays.
122 * Index.cs (empty): New empty array constant.
123 (Reset): Initialize '_array' to 'empty'.
124 (RebuildIndex): Don't allocate array if it will be empty.
125 (FindAllIndexes): Use 'empty' instead of 'new int [0]'.
127 2008-11-17 Raja R Harinath <harinath@hurrynot.org>
129 * Index.cs: Remove use of Array and Size properties by taking
130 advantage of the invariant that _array is never null.
131 (EnsureArray): Remove.
134 2008-11-17 Raja R Harinath <harinath@hurrynot.org>
136 * RecordCache.cs: Reduce some extraneous nesting.
138 2008-10-07 Daniel Morgan <monodanmorg@yahoo.com>
140 * DbConnectionStringBuilder.cs: fix setting and getting
141 the ConnectionString property
143 2008-09-16 Veerapuram Varadhan <vvaradhan@novell.com>
145 ** Fixes#421336 - Patch provided by <christian_hoff@gmx.net>
146 DbCommandBuilder.cs: Several scenarios leading to exceptions when
147 creating the update, insert and delete commands:
149 1. The "IsExpression" column in the column schema table can also
150 be DBNull which is equivalent to "false" but the DBCommandBuilder
151 does not check for DBNull and simply tries to cast it into a bool,
154 2. The commands do not get refreshed after a call to
155 UpdateSchema() because they are not set to NULL. This has the
156 consequence that empty commands(created with CreateNewCommand())
157 are returned afterwards.
159 3. Multiple parameters with the same name are generated if the
160 parameter names should be named after the columns.
162 2008-09-05 Raja R Harinath <harinath@hurrynot.org>
164 * DataContainer.cs (*.ZeroOut): Rename from the somewhat unclear
166 (IsNull): Use a more idiomatic form of the short-circuit.
167 (*.SetValue): Convert to one-liners.
169 2008-08-08 Raja R Harinath <harinath@hurrynot.org>
171 Reduce massive code duplication
172 * DataContainer.cs (DataContainer): Rename from AbstractDataContainer.
173 Introduce new 'protected abstract' members to encapsulate
174 type-specific handling, and move all common code here.
175 (DataContainer.Create): Rename from CreateInstance.
177 2008-07-06 Sebastien Pouliot <sebastien@ximian.com>
179 * DbDataReader.cs: Replace a few Type.GetType by typeof
180 [Found using Gendarme AvoidTypeGetTypeForConstantStringsRule]
182 2008-07-03 Marek Habersack <mhabersack@novell.com>
184 * DataAdapter.cs (BuildSchema): Check for null.
186 2008-07-01 Rodrigo Kumpera <rkumpera@novell.com>
188 * RecordCache.cs: Kill some foreach loops.
190 2008-04-21 Gert Driesen <drieseng@users.sourceforge.net>
192 * DataColumnMappingCollection.cs: Modified argument names to match
194 * DataTableMappingCollection.cs: Modified argument names to match MS.
197 2008-03-23 Gert Driesen <drieseng@users.sourceforge.net>
199 * DbDataAdapter.cs: Corcompare fixes and code formatting.
200 * DbDataRecord.cs: Corcompare fixes and code formatting.
201 * DataColumnMappingCollection.cs: Corcompare fixes and code formatting.
202 * RowUpdatedEventArgs.cs: Corcompare fixes and code formatting.
203 * DbParameterCollection.cs: Corcompare fixes and code formatting.
205 2007-11-15 Atsushi Enomoto <atsushi@ximian.com>
207 * DbProviderFactoriesConfigurationHandler.cs : Create() now takes
208 parent DataSet into consideration i.e. it now merges items in
209 different configurations. Fixed bug #323708.
211 2007-10-21 Gert Driesen <drieseng@users.sourceforge.net>
213 * DbDataPermissionAttribute.cs: In KeyRestrictionBehavior, reuse
214 ExceptionHelper.CheckEnumValue.
215 * ExceptionHelper.cs: Use same exception message for both 1.0 and 2.0.
216 * Index.cs: Fixed compiler warnings. Code formatting.
218 2007-10-20 Gert Driesen <drieseng@users.sourceforge.net>
220 * DbDataAdapter.cs: Implemented UpdateBatchSize setter.
221 * DataAdapter.cs: In FillLoadOption setter, ensure value is valid.
222 Modified MissingMappingAction and MissingSchemaAction setters to use
223 ExceptionHelper.CheckEnumValue to validate value. Spaces to tabs and
225 * ExceptionHelper.cs: Added CheckEnumValue method and modified
226 InvalidEnumValueException method to return AORE on 2.0 profile. Added
227 ConnectionClosed method that returns an InvalidOperationException.
229 2007-10-19 Gert Driesen <drieseng@users.sourceforge.net>
231 * DbTransaction.cs: Do not perform a rollback in Dispose (bool).
232 Leaves it up to deriving classes to override Dispose (bool) and
233 perform a rollback if necessary. Fixes bug #325397. Code formatting.
234 * ExceptionHelper.cs: Added TransactionNotUsable method that constructs
235 an InvalidOperationException to be thrown by IDbTransaction
236 implementations when the transaction is no longer open.
238 2007-09-27 Nagappan A <anagappan@novell.com>
240 * DbDataAdapter.cs: Added MonoTODO in appropriate place.
242 * DbCommandBuilder.cs (initializeCommand): Implemented missing API.
244 2007-09-25 Nagappan A <anagappan@novell.com>
246 * DbConnection.cs: 2.0 attribute fixes.
248 * DataColumnMapping.cs: 2.0 attribute fixes.
250 * DbParameterCollection.cs: Code alignment.
252 * DataAdapter.cs: 2.0 attribute fixes.
254 * DataTableMapping.cs: 2.0 attribute fixes.
256 * RowUpdatingEventArgs.cs (BaseCommand): Code alignment.
258 2007-09-24 Konstantin Triger <kostat@mainsoft.com>
260 * DbEnumerator.cs, DbDataRecord.cs: refactoring.
261 * DbDataRecord.cs: GetValue() should return null instead of DBNull.
263 2007-08-10 Nagappan A <anagappan@novell.com>
265 * DbDataAdapter.cs (Fill): Fixed method signature.
267 2007-07-26 Nagappan A <anagappan@novell.com>
269 * DbConnection.cs: Removed bogus TODO.
271 2007-07-22 Nagappan A <anagappan@novell.com>
273 * DbConnection.cs: 2.0 missing features.
275 * DbDataAdapter.cs: 2.0 missing features.
277 2007-06-30 Gert Driesen <drieseng@users.sourceforge.net>
279 * DbDataAdapter.cs: Marked ICloneable.Clone obsolete to match MS.
281 2007-06-21 Nagappan A <anagappan@novell.com>
283 * DbConnectionStringBuilder.cs (Init): Modified the dictionary to
284 use StringComparer.InvariantCultureIgnoreCase.
285 (Add, ContainsKey): Checks whether argument is null or empty string.
287 2007-05-08 Adar Wesley <adarw@mainsoft.com>
289 * DbProviderFactory.cs: minor refactoring for throwing exceptions
291 2007-04-30 Marek Habersack <mhabersack@novell.com>
293 * DbProviderFactories.cs: throw the same exception MS.NET does.
295 2007-03-03 Gert Driesen <drieseng@users.sourceforge.net>
297 * DbProviderFactoriesConfigurationHandler.cs: Added support for
300 2007-03-03 Gert driesen <drieseng@users.sourceforge.net>
302 * ConnectionStringsSectionHandler.cs: Removed since the 2.0 config
304 * DbProviderFactoriesConfigurationHandler.cs: Fixed name of DataSet
305 to match MS. Removed SupportedClasses column since this is no longer
306 part of 2.0 profile (removed during beta). Throw
307 ConfigurationErrorsException for unrecognized elements. Mark methods
308 private, and refactor them. Added FIXMEs for missing checks for
309 unrecognized attributes.
310 * DbProviderFactories.cs: Marked constants internal. Replaced spaces
311 with tabs. Use ConfigurationManager.GetSection instead of deprecated
312 ConfigurationSettings.GetConfig.
314 2007-02-26 Atsushi Enomoto <atsushi@ximian.com>
316 * DbProviderFactoriesConfigurationHandler.cs : there was a config
317 test that used to be broken.
319 2007-02-26 Atsushi Enomoto <atsushi@ximian.com>
321 * DbProviderFactoriesConfigurationHandler.cs : remove "support"
322 attribute check, as it does not really do anything.
324 2007-02-19 Atsushi Enomoto <atsushi@ximian.com>
326 * DbProviderFactoriesConfigurationHandler.cs : "support" attribute is
327 optional. Fixed bug #80894.
329 2007-02-09 Nagappan A <anagappan@novell.com>
331 * DbProviderFactory.cs: Derived class has to implement all the
332 methods of this class.
334 * DbProviderFactoriesConfigurationHandler.cs (Create): Removed
337 2007-01-08 Nagappan A <anagappan@novell.com>
339 * DataTableMappingCollection.cs (AddRange): Implemented missing
342 * DbConnection.cs (GetSchema): Implemented missing NET 2.0 API,
343 based on SqlClient implementation.
345 * DbConnectionStringBuilder.cs (AppendKeyValuePair): Implemented
348 * DbDataReader.cs (GetData): Implemented missing API.
349 (GetDbDataReader): Implemented missing API.
351 * DbCommandBuilder.cs (BuildCache, BuildInformation)
352 (IncludedInInsert, IncludedInUpdate, IncludedInWhereClause)
353 (CreateDeleteCommand, CreateInsertCommand, CreateNewCommand)
354 (CreateUpdateCommand, CreateParameter): Added private methods.
355 (QuotedTableName, GetQuotedString, CatalogLocation)
356 (CatalogSeparator, ConflictOption, DataAdapter, QuotePrefix)
357 (QuoteSuffix, SchemaSeparator): Implemented public properties.
358 (SourceCommand): Implemented private property.
359 (Dispose, RowUpdatingHandler): Implemented protected methods.
360 (GetDeleteCommand, GetInsertCommand, GetUpdateCommand)
361 (QuoteIdentifier, UnquoteIdentifier, RefreshSchema): Implemented
364 * DbProviderFactory.cs: Removed MonoTODO's as the derived class
365 has to implement all the methods in this class.
367 * DataAdapter.cs (Fill): Implemented missing method.
369 * DbDataAdapter.cs (FillCommandBehavior): Implemented property.
371 2006-12-20 Nagappan A <anagappan@novell.com>
373 * DataColumnMapping.cs (GetDataColumnBySchemaAction): Implemented
376 * DbDataReader.cs: Removed TODO's where ever the implementation is
379 * RowUpdatedEventArgs.cs: Removed TODO's where ever the
380 implementation is available.
382 * DataAdapter.cs (FillInternal): Moved from DbDataAdapater.cs to
384 (BuildSchema): Moved from DbDataAdapter.cs.
385 (FillTable): Moved from DbDataAdapter.cs.
386 (OnFillErrorInternal): Implemented new internal method to raise an
388 (SetupSchema): Moved from DbDataAdapter.cs.
389 (FillInterl): Moved common implementation from DbDataAdapter.cs.
390 Removed TODO's where ever the implementation is available.
392 * DbDataAdapter.cs (OnRowUpdated): Implemented protected method.
393 (OnRowUpdating): Implemented protected method.
394 (CreateFillErrorEvent): Moved to DataAdapter.cs.
395 (Fill): Moved common implementation to DataAdapter.cs.
396 (FillTable): Moved to DataAdapter.cs.
397 (BuildSchema): Moved to DataAdapter.cs.
398 (SetupSchema): Moved to DataAdapter.cs.
400 2006-12-11 Miguel de Icaza <miguel@novell.com>
402 * DataAdapter.cs: Removed TODO, NotSupportedException was the
403 correct implementation.
405 2006-11-28 Nagappan A <anagappan@novell.com>
407 * DbDataAdapter.cs: Removed bogus MonoTODOs
409 * DataAdapter.cs: Removed bogus MonoTODOs
411 2006-11-15 Nagappan A <anagappan@novell.com>
413 * DbDataAdapter.cs (FillFromReader): Implemented missing API to
414 handle FillErrorEventHandler
415 (DataAdapter): Implemented missing .NET 2.0 function
416 (GetDeleteCommand): Returns DbDataAdapter deleteCommand internal
418 (GetInsertCommand): Returns DbDataAdapter insertCommand internal
420 (GetUpdateCommand): Returns DbDataAdapter updateCommand internal
423 2006-09-06 Konstantin Triger <kostat@mainsoft.com>
425 * DbDataAdapter.cs: added basic implementation for some 2.0 features.
427 2006-08-24 Vladimir Krasnov <vladimirk@mainsoft.com>
429 * DbProviderFactories.cs: added TARGET_JVM block to not supported
432 2006-08-06 Konstantin Triger <kostat@mainsoft.com>
434 * DbDataReader.cs: DbDataReader.Dipose(bool) - implemented.
436 2006-07-17 Senganal T <tsenganal@novell.com>
439 - GetAllRows : Added. Returns all the rows in the current
441 - GetDistinctRows :Added. Returns all the distinct rows (based
442 in Key Columns) in the index.
444 2006-07-13 Senganal T <tsenganal@novell.com>
446 * SchemaInfo.cs DbDataAdapter.cs DbConnectionOptions.cs DbParameter.cs
447 DbMetaDataColumnNames.cs DbTransaction.cs DataTableMapping.cs DataAdapter.cs
448 FieldNameLookup.cs DbDataRecord.cs DataColumnMappingCollection.cs DbCommand.cs
449 DbDataPermission.cs DbProviderFactory.cs DbCommandBuilder.cs DbConnectionString.cs
450 RowUpdatedEventArgs.cs DbDataReader.cs DbConnectionStringBuilder.cs DbConnection.cs
451 DataTableMappingCollection.cs :
454 2006-06-15 Senganal T <tsenganal@novell.com>
457 -Equals : Check for Equality of Sort Order too.
459 2006-04-07 Senganal T <tsenganal@novell.com>
462 * Update () : If the Update/Delete Query has a null check,
463 then populate the parameter value correctly.
465 2006-03-20 Senganal T <tsenganal@novell.com>
468 - Ctor () : Set Default Values for DataAdapter members
470 - Update () : Call row.AcceptChanges only if AcceptChangesDuringUpdate
471 is true. Fixes bug #77776
473 2006-03-09 Senganal T <tsenganal@novell.com>
476 - Update () : Add the new record in the correct position
478 2006-03-07 Senganal T <tsenganal@novell.com>
481 Reverted the changes from the earlier patch.
483 2006-02-22 Senganal T <tsenganal@novell.com>
486 - FillTable : Move BeginLoadData, EndLoadData outside the loop. Also,
487 move EndLoadData outsidet try,catch block. FillError is only for errors
488 occuring during loading the data into datatable.
490 - Set Default value of RowStateFilter to (CurrentRos | OriginalRows).
491 - ContainsVersion : If RowStateFilter is set to default value, return true
492 for Modified Rows as they can contain Default/Original versions.
494 2006-02-18 Raja R Harinath <harinath@gmail.com>
496 * DbConnectionStringBuilder.cs (ICollection.CopyTo): Use
497 _dictionary, not 'this' in cast.
499 2006-02-17 Chris Toshok <toshok@ximian.com>
501 * DbDataAdapter.cs: more 2.0 cleanup.
503 2006-02-17 Chris Toshok <toshok@ximian.com>
505 * DataAdapter.cs, DataColumnMappingCollection.cs,
506 DataColumnMapping.cs, DataTableMappingCollection.cs,
507 DataTableMapping.cs, DbCommandBuilder.cs,
508 DbConnectionStringBuilder.cs, DbParameterCollection.cs,
509 DbParameter.cs: pretty major attribute work.
511 2006-02-17 Chris Toshok <toshok@ximian.com>
513 * DbProviderFactory.cs: remove two methods. and mark the
514 DbProviderSupportedClasses ctor as internal since it's not part of
517 * DbTable.cs: remove this class from 2.0 build.. leave it for the
520 * RowUpdatingEventArgs.cs: this class isn't abstract in 2.0.
522 * RowUpdatedEventArgs.cs: this class isn't abstract in 2.0.
524 * SupportedJoinOperators.cs: new 2.0 enum.
526 * CatalogLocation.cs: fix enum values.
528 * GroupByBehavior.cs: same.
530 * IdentifierCase.cs: same.
532 * SchemaTableColumn.cs: class is static, not sealed. and add
535 * SchemaTableOptionalColumn.cs: same.
537 * DbDataReader.cs: oops, add back in VisibleFieldCount (i missed
538 it in the corcompare output), add EditorBrowsable attributes all
539 over the place, and fix some method signatures.
541 * DbDataUpdatableRecord.cs: remove this 2.0 file.
543 2006-02-17 Chris Toshok <toshok@ximian.com>
545 * DbDataReader.cs: remove VisibleFieldCount attribute, and remove
546 IDataReader2 and IDataRecord2 interfaces.
548 2006-02-13 Senganal T <tsenganal@novell.com>
552 - Add table to schema only if MissingSchemaAction is not Ignore
553 Add schema to table if MissingSchemaAction is set to either of
556 - Set the Schema values only if MissingSchemaAction is set to
559 2006-01-31 Senganal T <tsenganal@novell.com>
562 - Corrected an error in the prev checkin.. Fixes #77415
564 2006-01-27 Senganal T <tsenganal@novell.com>
567 - Modified schema population to follow MissingSchemaAction and MissingMappingAction
568 - Add a column to the Primary Key only if its not a hidden key
569 - Added some argument checks
570 - Removed some redundant code
572 - Added argument checks
574 - Added InvalidEnumException , a helper function to print error msg
576 2006-01-11 Boris Kirzner <borisk@mainsoft.com>
577 * Index.cs: removed redundant call to RebuildIndex() in constructor.
579 2005-12-12 Konstantin Triger <kostat@mainsoft.com>
581 * Key.cs: Added ContainsVersion function, refactoring.
582 * Index.cs: Fixed Reset() to be ready for Update() calls.
583 Otherwise the index can be rebuilt with new values inside the
584 Update() call itself.
585 Fixed FindIndexExact(), Update(), Delete().
587 2005-11-22 Konstantin Triger <kostat@mainsoft.com>
589 * DbProviderFactory.cs: TARGET_JVM ifdef.
591 2005-11-21 Senganal T <tsenganal@novell.com>
597 * DbProviderFactories.cs
599 * DbProviderFactory.cs
600 * DbCommandBuilder.cs
602 * DbParameterCollection.cs
603 - Added stubs and other changes for ADO.NET 2.0 compatibility.
604 * DbMetaDataCollectionNames.cs (new file)
605 - Added DbMetaDataCollectionNames Enumeration
607 2005-10-24 Konstantin Triger <kostat@mainsoft.com>
609 * DataContainer.cs: removed extra type validation for object container
611 2005-10-14 Senganal T <tsenganal@novell.com>
614 - BuildSchema() : Set the value of DataColumn Property 'AllowDBNull'
615 as returned by database. Fixes bug#76433.
617 2005-09-21 Boris Kirzner <borisk@mainsoft.com>
619 - Rebuild index immediately after construction.
620 - Do not add records if they do not padd key filtration.
621 - Do not attempt to remove records if the are not in the index.
623 - Added HasFilter property, CanContain and DependsOn methods.
624 - Equals() uses filter expression comparison.
626 2005-09-07 Boris Kirzner <borisk@mainsoft.com>
627 * DataContainer.cs: Do not convert value if container type
630 2005-08-08 Gert Driesen <drieseng@users.sourceforge.net>
632 * DbTypes.cs: Marked internal to fix public API.
634 2005-08-05 Sureshkumar T <tsureshkumar@novell.com>
637 - Update (): set parameter values only after getting the
638 appropriate command from command builder. Close reader only if it
639 is not closed before. Use parameter's SourceVersion. Whitespace
640 corrections to comply with standard.
642 2005-07-22 Sureshkumar T <tsureshkumar@novell.com>
644 * DataColumnMappingCollection.cs: updated attributes & attribute
645 descriptions to match with masterinfos.
647 2005-07-15 Sureshkumar T <tsureshkumar@novell.com>
649 * DataTableMappingCollection.cs: GetTableMappingBySchemaAction:
650 meaningful error message if mapping is missing.
652 * DbDataAdapter.cs: Update: meaningful message if table is missing.
654 2005-06-22 Sureshkumar T <tsureshkumar@novell.com>
656 * Index.cs: Remove : length for Array.Copy (a, i+1, a, i, length -
659 2005-06-21 Sureshkumar T <tsureshkumar@novell.com>
661 * DbConnectionStringBuilder.cs: Implemented method for parsing
662 connection string through "ConnectionString" property.
664 * DbConnectionStringBuilderHelper.cs: Helper class to provide
665 conversion between string=>.net type mapping for connection string
666 builders. The idea is to use between other providers (odbc) as
669 2005-05-29 Boris Kirzner <borisk@mainsoft.com>
670 * DbCommand.cs - added #ifdef NET_2_0 on DbCommandOptionalFeatures (not used in TARGET_JVM).
671 * ExceptionHelper.cs - removed java references. Exceptions created on formatted text messages. Code styling fixes.
672 * DbParameterCollection.cs - implemented indexer properties.
673 * DbDataAdapter.cs - delagate exceptions creating to ExceptionHelper.
675 2005-05-25 Konstantin Triger <kostat@mainsoft.com>
677 * DataContainer.cs: Correcting the order - first the record is queried whether the value it contains is null, and only if not the value is fetched
679 2005-05-20 Umadevi S <sumadevi@novell.com>
680 * Added file DbProviderSpecificTypePropertyAttribute.cs
682 2005-05-19 Umadevi S <sumadevi@novell.com>
684 * RowUpdatingEventArgs.cs - added BaseCommand property for net 2.0
686 2005-05-18 Konstantin Triger <kostat@mainsoft.com>
688 * DbDataAdapter.cs: Initialize the schema values to defaults if the schema does not contain the information
690 2005-05-16 Sureshkumar T <tsureshkumar@novell.com>
692 * RecordCache.cs: quick fix to make build 2.0 profile (follow up
693 for check in 2005-05-16).
695 2005-05-16 Konstantin Triger <kostat@mainsoft.com>
697 * Index.cs: validation that the updated row belongs to the index
699 2005-05-02 Konstantin Triger <kostat@mainsoft.com>
702 Added CharDataContainer, SByteDataContainer, UInt16DataContainer, UInt32DataContainer, UInt64DataContainer, DateTimeDataContainer, DecimalDataContainer
703 SetItemFromDataRecord: Changed to work with ISafeDataRecord or through GetValue to enable conversion
704 return DBNull.Value when the stored value is null
707 Ensure correct order for LoadDataRow
708 Fixing schema creation
712 LoadSchema: Retrieve needed fields only
715 Added Rows-to-Records mapping
716 Added ReadIDataRecord method for correct handling of default/auto increment values
718 * Added Index.cs: Index implementation
719 * Added Key.cs: Index descriptor implementation
722 2005-04-27 Sureshkumar T <tsureshkumar@novell.com>
724 * DbDataReader.cs: Added static method to construct the schema
725 table with default schema. Could be reused in many places.
727 2005-04-22 Sureshkumar T <tsureshkumar@novell.com>
729 * DbDataAdapter.cs: Moved FillTable and BuildSchema as static
730 methods as they are not operating on the current instance. This
731 could be reused to fill any table from a data reader.
733 * RecordCache.cs: While disposing records, make sure that the
734 record is not already disposed. i.e. to make sure later the same
735 record is not reused. Implemented a static method to compare two
736 version of records in a container.
738 2005-04-18 Sureshkumar T <tsureshkumar@novell.com>
740 * DataAdapter.cs: Implemenetd OnFillError handler.
742 * DbDataAdapter.cs: BuildSchema (): the table to be filled might
743 contain few additional columns as well. so mapping length should
744 be columns' length + fields' length.
746 2005-03-24 Sureshkumar T <tsureshkumar@novell.com>
748 * DbDataAdapter.cs: Update: If SourceColumn is null, do not set
749 value for the parameter.
751 2005-05-25 Umadevi S <sumadevi@novell.com>
752 * Added DbException.cs
754 2005-03-23 Sureshkumar T <tsureshkumar@novell.com>
756 * DbDataAdapter.cs: For Update, disable ReadOnly constraint
757 temporarily before updating the row. Info from Ingo Bauersachs.
758 SkipAllRemainingRows should also skip current row (msdn).
760 2005-03-22 Sureshkumar T <tsureshkumar@novell.com>
762 * DbDataAdapter.cs: Update (): update the rows based on the
763 UpdateRowSource property. Process further based on the
764 RowUpdatedEvent handler argument's Status property.
765 Fixes bug #73587. Thanks to mono@rankweg.ch (Ingo Bauersachs) for
766 bug report and patch.
768 * RowUpdatedEventArgs.cs: if custom error is not set, throw a
771 2005-03-01 Sureshkumar T <tsureshkumar@novell.com>
773 * ConnectionStringsSectionHandler.cs: Added. configuration section
774 handler for section "connectionStrings". This handler is a ad hoc
775 solution till the new configuration API is available in mono.
777 2005-02-04 Sureshkumar T <tsureshkumar@novell.com>
779 * DbDataAdapter.cs (Update ()) :
780 - Check for one return result set and map the values back to
782 - Check for output & return value parameters and update the value
783 back to mapped column
784 - check for recordsAffected only after closing the reader.
786 2005-02-02 Sureshkumar T <tsureshkumar@novell.com>
788 * DbConnection.cs: Implement Dispose pattern.
790 2005-01-25 Atsushi Enomoto <atsushi@ximian.com>
792 * DbDataPermission.cs : Empty.Union(Empty) is Empty.
794 2005-01-14 Atsushi Enomoto <atsushi@ximian.com>
796 * DbDataPermissionAttribute.cs, PermissionHelper.cs :
797 fixed some incompatible type of exception between 2.0 and 1.x.
799 Wrap exceptions thrown by SetValue() within ArgumentException.
801 2004-12-10 Sureshkumar T <tsureshkumar@novell.com>
803 * DbDataAdapter.cs (BuildSchema): Add the primary key schema iff
804 MissingSchemaAction is set to AddWithKey. Also, Add auto increment
805 value from the source table. fixes bug #67757 and #69110.
807 2004-11-24 Sureshkumar T <tsureshkumar@novell.com>
809 * DbProviderSupportedClasses.cs: Added correct enum values.
810 * DbConnection.cs: Missing virtual method EnlistTransaction Added.
811 * DbCommand.cs: Implemented ProviderFactory base factory methods.
813 2004-11-22 Sureshkumar T <tsureshkumar@novell.com>
815 * DbConnectionStringBuilder.cs: Class for helping creation of db
816 connection strings added.
818 2004-10-01 Sureshkumar T <tsureshkumar@novell.com>
820 * DbProviderFactories.cs: Implemented all the stubs. Added functionality for
821 getting available provider factories and creating a specified provider factory.
823 * DbProviderFactoriesConfigurationHandler.cs: Added functionality for handling
824 DbProviderFactories configuration section.
826 * DbProviderFactory.cs: Added protected constructor. SupportedClasses property
829 2004-09-14 Sebastien Pouliot <sebastien@ximian.com>
831 * DbDataPermission.cs: Implemented Intersect, IsSubsetOf and Union.
832 Implementation isn't complete as the restrictions seems to change the
833 expected results (breaking some rules like x.IsSubsetOf (x) == false).
834 Better (real-world) tests cases are required.
835 * PermissionHelper.cs: Fixed small differences between System.Data.dll
836 validations wrt to mscorlib.dll (XML and PermissionState).
838 2004-09-13 Sebastien Pouliot <sebastien@ximian.com>
840 * DbConnectionOptions.cs: New class for Fx 2.0. Partial implementation
841 to support new methods in DBDataPermission.
842 * DbConnectionString.cs: Updated class to split from/inherit
843 DbConnectionOptions class.
844 * DbDataPermission.cs: Implemented Add, Clear, Copy, ToXml methods and
845 completed constructors.
846 * DbDataPermissionAttribute.cs: Completed/fixed class.
847 * PermissionHelper.cs: Helper methods to create permission classes.
849 2004-08-31 Francisco Figueiredo Jr. <fxjrlists@yahoo.com.br>
850 * DbDataAdapter.cs: Fix for out of memory exceptions when trying to fill a dataset with a query which doesn't return a resultset like insert, delete or update.
852 2004-07-21 Umadevi S <sumadevi@novell.com>
853 * DbDataRecord.cs - Fix for bug 58163. Return DBNull instead of null
855 2004-07-07 Umadevi S <sumadevi@novell.com>
856 * DataContainer.cs :CheckedforNull before calling the relavant setmethods in each of the
857 SetItemForDataRecord method for the DateTimeClass
860 2004-06-24 Atsushi Enomoto <atsushi@ximian.com>
862 * DataColumnMappingCollection.cs : fixed typo.
863 * DbDataAdapter.cs : column mappings were not filled.
865 2004-06-24 Atsushi Enomoto <atsushi@ximian.com>
867 * DataTableMapping.cs : Clone() should also clone ColumnMappings.
869 2004-06-18 Umadevi S <sumadevi@novell.com>
870 * DataContainer.cs - CheckedforNull before calling the relavant setmethods in each of the
871 SetItemForDataRecord method for all the classes.
873 2004-06-17 Boris Kirzner <borisk@mainsoft.com>
874 * RecordCache.cs : Added CopyRecord mathod that copies single record from one table to another.
876 2004-06-17 Boris Kirzner <borisk@mainsoft.com>
878 - Store and retreival of null and DBNull values reviewed.
879 - Added GetInt64 to support AutoIncrement of DataColumn.
880 - Added missing CopyValue method to BitDataContainer.
881 - Added FillValues method to propagate single value to whole container.
883 2004-06-10 Umadevi S <sumadevi@novell.com>
884 * DataTableMappingCollection.cs - fixed nunit testcase errors
885 IndexOfDataSetTable method
887 2004-06-09 Umadevi S <sumadevi@novell.com>
888 * DataTableMappingCollection.cs - fixed nunit testcase errors
889 - Add, GetByDataSetTable,Insert, Remove, RemoveAt methods.
891 2004-06-09 Umadevi S <sumadevi@novell.com>
892 * DataColumnMappingCollection.cs - fixed nunit testcase errors
893 - GetByDataSetColumn,IndexOfDataSetColumn, Remove methods.
895 2004-06-08 Umadevi S <sumadevi@novell.com>
896 * DataColumnMappingCollection.cs - fixed nunit testcase errors.
897 - remove, removeat, contains methods.
899 2004-06-04 Gert Driesen <drieseng@users.sourceforge.net>
901 * DataAdapter.cs: added missing protected ctor
902 * DbDataAdapter.cs: added stub for missing protected ctor
903 * DbDataPermission.cs: added stubs for missing protected
904 ctors, added stub for missing Clear method
906 2004-06-02 Gert Driesen <drieseng@users.sourceforge.net>
907 * DataColumnMappingCollection.cs: added missing attributes on
910 2004-05-27 Boris Kirzner <borisk@mainsoft.com>
911 * DataContainer.cs : Bug fixes in BitDataContainer.get_Item and StringDataContainer.SetValue .
913 2004-05-20 Gert Driesen (drieseng@users.sourceforge.net)
915 * DbDataPermissionAttribute.cs: change AllowMultiple and
916 Inherited to match .NET
918 2004-05-19 Boris Kirzner <borisk@mainsoft.com>
919 * Datacontainer.cs : CompareValues reviewed. set_Item and get_Item of null and DBNull values in case of DataContainers
920 for primitive types reviewed. Added check for null values when reading from IDataRecord.
922 2004-05-19 Boris Kirzner <borisk@mainsoft.com>
923 * RecordCache.cs - added. Each instance of record cache belongs to specific table
924 and manages pool of records ( indexes into data containers) to be used by data rows.
925 * DataContainer.cs - added. Provides implementation for data containers that holds data in arrays
926 of primitives or objects. Each data container belongs to specific DataColumn.
927 * DbDataAdapter.cs - changes to complete data storage redesign. Bug fix in FillTable
928 ( to fetch exact number of records required ).
930 2004-05-13 Umadevi S (sumadevi@novell.com)
931 * DbDataPermissionAttribute.cs - Added KeyRestrictions property with a TODO tag
933 2004-05-09 Gert Driesen (drieseng@users.sourceforge.net)
934 * ComparerFactory.cs: marked internal
936 2003-04-26 Boris Kirzner <borisk@mainsoft.com>
937 * DataColumnMappingCollection.cs : Small fix in exception message thrown.
939 2003-04-25 Boris Kirzner <borisk@mainsoft.com>
940 * DbDataAdapter.cs : Fixed bug in Fill :
941 - Reader can have empty results (fo example from UPDATE or DELETE).
942 - Reader can have results with no rows (SELECT that returns 0 rows but have columns)
943 - In FillTable - skip rows only once for each table.
945 2003-04-14 Juraj Skripsky <juraj@hotfeet.ch>
946 * DbDataAdapter.cs : Refactoring of Fill. New private method
947 FillTable does most of the work now. Use int[] instead of
948 hashtable for mapping. Move creation of tableArray[] outside
951 2004-03-12 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
953 * DbDataPermissionAttribute.cs: Added .Net 1.1 marks
954 * DataColumnMapping.cs: DO NOT USE the consts scheme if types can be referenced directly!
955 * DataTableMapping.cs: DO NOT USE the consts scheme if types can be referenced directly!
956 * DataColumnMappingConverter: Added stub
957 * DataTableMappingConverter: Added stub
959 2004-03-03 Eran Domb <erand@miansoft.com>
961 * ComparerFactory.cs : Added.
963 2004-01-10 Atsushi Enomoto <atsushi@ximian.com>
965 * DbDataPermission.cs : tiny fix to pass OleDbPermission.
967 2004-01-09 Atsushi Enomoto <atsushi@ximian.com>
969 * DbDataPermission.cs : .ctor(PermissionState state) should not call
970 obsolete .ctor(state, allowBlankPassword). csc reports an error.
972 2003-12-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
974 * DbDataAdapter.cs: handle MissingShemaAction.AddWithKey, call
975 AcceptChanges in Update when a CommandBuilder is used and
976 correctly fill information about primary keys in FillSchema.
977 Patch from Sergei Malinin (smalinin@amurnet.ru).
979 2003-12-23 Tim Coleman <tim@timcoleman.com>
980 * DbConnectionString.cs:
982 * DbProviderFactory.cs:
983 Fix typo to make CLS compliant
985 2003-12-16 Jackson Harper <jackson@ximian.com>
987 * SchemaTableOptionalColumn.cs: Add to fix default build
989 2003-12-16 Tim Coleman <tim@timcoleman.com>
990 * CatalogLocation.cs DbCommand.cs DbCommandBuilder.cs
991 * DbCommandOptionalFeatures.cs DbCommandSet.cs DbConnection.cs
992 * DbConnectionString.cs DbDataSourceEnumerator.cs
993 * DbDataUpdatableRecord.cs DbParameter.cs DbParameterCollection.cs
994 * DbProviderConfigurationHandler.cs DbProviderFactories.cs
995 * DbProviderFactoriesConfigurationHandler.cs DbProviderFactory.cs
996 * DbProviderSupportedClasses.cs DbTable.cs DbTransaction.cs
997 * GroupByBehavior.cs IdentifierCase.cs SchemaLocation.cs
998 * SchemaTableColumn.cs:
999 New stubs added for .NET 1.2
1000 * DataAdapter.cs DataColumnMapping.cs DataColumnMappingCollection.cs
1001 * DataTableMapping.cs DataTableMappingCollection.cs DbDataAdapter.cs
1002 * DbDataPermission.cs DbDataPermissionAttribute.cs DbDataRecord.cs
1003 * FieldNameLookup.cs SchemaInfo.cs:
1004 Changes made for .NET 1.2
1006 2003-10-22 Eran Domb <erand@miansoft.com>
1007 * DbDataAdapter.cs : Check if there is mapping to avoid exception.
1009 2003-11-26 Tim Coleman <tim@timcoleman.com>
1010 * DbDataReader.cs: Add new stub class
1012 2003-11-23 Pedro Martínez Juliá <yoros@wanadoo.es>
1014 * DbDataAdapter.cs: Call command dispose in self dispose method. We
1015 need to dispose the connections and other stuff stored in the
1018 2003-11-10 Pedro Martínez Juliá <yoros@wanadoo.es>
1020 * DataColumnMappingCollection.cs: Fix a missing exception when the
1021 required mapping is not in the collection. MS.NET throws an
1024 2003-10-22 Eran Domb <erand@miansoft.com>
1026 * DbDataAdapter.cs (Fill): add only the mapped column to the dataTable (not all columns of dataReader).
1027 Also closing the dataReader if an exception is thrown.
1028 (Fill): the same as above.
1029 (SetupSchema): in now return string (the table name).
1030 (GetFillParameters): fix a bug.
1031 (BuildSchema) - it now return Hashtable. Add columns to the table only if there is a mapping. Build an Hashtable that maps the columns from the table to the column from the reader.
1032 (Update): first open the connection if needed. Catch an exception of the ExecuteQuery.
1035 2003-09-30 Duncan Mak <duncan@ximian.com>
1037 Patch from Eran Domb <eran@mainsoft.com>.
1039 * DbDataAdapter.cs (Fill): Fixed an Exception from being thrown.
1041 2003-09-25 Duncan Mak <duncan@ximian.com>
1043 * DbDataAdapter.cs (Fill): Patch from Eran Domb, <eran@mainsoft.com>.
1044 Fixes a possible NullReferenceException, more details here:
1046 http://lists.ximian.com/archives/public/mono-devel-list/2003-September/002116.html
1048 2003-09-21 eran <erand@mainsoft.com>
1050 * DbDataRecord.cs: The method
1051 System.Data.Common.DbDataRecord.GetValues(object[] values) did not
1052 put the values of the DbDataRecord into values parameter.
1054 2003-08-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1056 * DbDataAdapter.cs: provide a Type for ToArray to avoid invalid cast
1057 exception. Thanks to Mark Easton <measton@tebiki.co.uk>.
1059 2003-07-31 Duncan Mak <duncan@ximian.com>
1061 * DataAdapter.cs (CloneInternals): Mark with ObsoleteAttribute for
1064 2003-03-21 Alan Tam <Tam@SiuLung.com>
1066 * DbDataAdapter.cs: Update now uses correct DataRowVersion
1067 when accessing the data.
1069 2003-03-17 Aleksey Demakov <avd@openlinksw.com>
1071 * DbDataAdapter.cs: BuildSchema now uses ColumnName instead
1072 of BaseColumnName (bug #39830) for DataColumn names.
1073 BaseTableName is no longer taken into account as well.
1075 2003-02-28 Aleksey Demakov <avd@openlinksw.com>
1077 * DbDataAdapter.cs: Update (DataSet) updates the default
1080 2003-02-25 Alan Tam <Tam@SiuLung.com>
1082 * DbDataAdapter.cs: Added support for filling when schema is present.
1083 Fixed incorrect behavior when ColumnMapping is present
1084 when more than one fields have the same name. Implemented Dispose.
1085 Fixed error when there is no ColumnMapping at all.
1086 Still have some problems in finding the correct TableMapping
1087 because the SourceTable name is not present in BuildSchema
1089 2003-02-24 Aleksey Demakov <avd@openlinksw.com>
1091 * DbDataAdapter.cs: The original code might pass a null DataTableMapping
1092 value which is then used to create a RowUpdatingEventArgs
1093 instance. So RowUpdatingEvent handler (for instance
1094 CommandBuilder) could get null DataTableMapping which
1095 might be unexpected. The patch makes sure that a non-null
1096 DataTableMapping is passed.
1098 2003-01-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1100 * DbEnumerator.cs: why does the runtime throw an invalid cast here? The
1101 object is an Int16... Gotta fill a bug report and when fixed undo this
1104 2003-01-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1106 * DbDataRecord.cs: return DbNull.Value in GetValue () if value is null.
1108 2002-10-31 Daniel Morgan <danmorg@sc.rr.com>
1110 * SchemaInfo.cs: added missing properties to fix mcs build
1112 2002-05-05 Miguel de Icaza <miguel@ximian.com>
1114 * DataTableMapping.cs, DataTableMappingCollection.cs: comment out
1115 interfaces we do not implement yet.
1117 * DbDataAdapter.cs: Stub IEnumerable, comment out interfaces
1118 we do not implement yet.
1120 * DbDataPermissionAttribute.cs: call base constructor.