Updates
[mono.git] / mcs / class / System.Data / System.Data.Common / ChangeLog
1 2008-10-07  Daniel Morgan  <monodanmorg@yahoo.com>
2
3         * DbConnectionStringBuilder.cs: fix setting and getting
4         the ConnectionString property
5
6 2008-09-16  Veerapuram Varadhan  <vvaradhan@novell.com>
7
8         ** Fixes#421336 - Patch provided by <christian_hoff@gmx.net>    
9         DbCommandBuilder.cs: Several scenarios leading to exceptions when
10         creating the update, insert and delete commands: 
11
12         1. The "IsExpression" column in the column schema table can also
13         be DBNull which is equivalent to "false" but the DBCommandBuilder
14         does not check for DBNull and simply tries to cast it into a bool,
15         which will fail.
16
17         2. The commands do not get refreshed after a call to
18         UpdateSchema() because they are not set to NULL. This has the
19         consequence that empty commands(created with CreateNewCommand())
20         are returned afterwards.
21
22         3. Multiple parameters with the same name are generated if the
23         parameter names should be named after the columns.
24         
25 2008-09-05  Raja R Harinath  <harinath@hurrynot.org>
26
27         * DataContainer.cs (*.ZeroOut): Rename from the somewhat unclear
28         'SetDefaultValue'.
29         (IsNull): Use a more idiomatic form of the short-circuit.
30         (*.SetValue): Convert to one-liners.
31
32 2008-08-08  Raja R Harinath  <harinath@hurrynot.org>
33
34         Reduce massive code duplication
35         * DataContainer.cs (DataContainer): Rename from AbstractDataContainer.
36         Introduce new 'protected abstract' members to encapsulate
37         type-specific handling, and move all common code here.
38         (DataContainer.Create): Rename from CreateInstance.
39
40 2008-07-06  Sebastien Pouliot  <sebastien@ximian.com> 
41
42         * DbDataReader.cs: Replace a few Type.GetType by typeof
43         [Found using Gendarme AvoidTypeGetTypeForConstantStringsRule]
44
45 2008-07-03  Marek Habersack  <mhabersack@novell.com>
46
47         * DataAdapter.cs (BuildSchema): Check for null.
48         
49 2008-07-01  Rodrigo Kumpera  <rkumpera@novell.com>
50
51         * RecordCache.cs: Kill some foreach loops.
52
53 2008-04-21  Gert Driesen  <drieseng@users.sourceforge.net>
54
55         * DataColumnMappingCollection.cs: Modified argument names to match
56         MS. Code formatting.
57         * DataTableMappingCollection.cs: Modified argument names to match MS.
58         Code formatting.
59
60 2008-03-23  Gert Driesen  <drieseng@users.sourceforge.net>
61
62         * DbDataAdapter.cs: Corcompare fixes and code formatting.
63         * DbDataRecord.cs: Corcompare fixes and code formatting.
64         * DataColumnMappingCollection.cs: Corcompare fixes and code formatting.
65         * RowUpdatedEventArgs.cs: Corcompare fixes and code formatting.
66         * DbParameterCollection.cs: Corcompare fixes and code formatting.
67
68 2007-11-15  Atsushi Enomoto  <atsushi@ximian.com>
69
70         * DbProviderFactoriesConfigurationHandler.cs : Create() now takes
71           parent DataSet into consideration i.e. it now merges items in
72           different configurations. Fixed bug #323708.
73
74 2007-10-21  Gert Driesen  <drieseng@users.sourceforge.net>
75
76         * DbDataPermissionAttribute.cs: In KeyRestrictionBehavior, reuse
77         ExceptionHelper.CheckEnumValue.
78         * ExceptionHelper.cs: Use same exception message for both 1.0 and 2.0.
79         * Index.cs: Fixed compiler warnings. Code formatting.
80
81 2007-10-20  Gert Driesen  <drieseng@users.sourceforge.net>
82
83         * DbDataAdapter.cs: Implemented UpdateBatchSize setter.
84         * DataAdapter.cs: In FillLoadOption setter, ensure value is valid.
85         Modified MissingMappingAction and MissingSchemaAction setters to use
86         ExceptionHelper.CheckEnumValue to validate value. Spaces to tabs and
87         code formatting.
88         * ExceptionHelper.cs: Added CheckEnumValue method and modified
89         InvalidEnumValueException method to return AORE on 2.0 profile. Added
90         ConnectionClosed method that returns an InvalidOperationException.
91
92 2007-10-19  Gert Driesen  <drieseng@users.sourceforge.net>
93
94         * DbTransaction.cs: Do not perform a rollback in Dispose (bool).
95         Leaves it up to deriving classes to override Dispose (bool) and
96         perform a rollback if necessary. Fixes bug #325397. Code formatting.
97         * ExceptionHelper.cs: Added TransactionNotUsable method that constructs
98         an InvalidOperationException to be thrown by IDbTransaction
99         implementations when the transaction is no longer open.
100
101 2007-09-27  Nagappan A <anagappan@novell.com> 
102
103         * DbDataAdapter.cs: Added MonoTODO in appropriate place.
104         
105         * DbCommandBuilder.cs (initializeCommand): Implemented missing API.
106
107 2007-09-25  Nagappan A  <anagappan@novell.com>
108
109         * DbConnection.cs: 2.0 attribute fixes.
110
111         * DataColumnMapping.cs: 2.0 attribute fixes.
112
113         * DbParameterCollection.cs: Code alignment.
114
115         * DataAdapter.cs: 2.0 attribute fixes.
116
117         * DataTableMapping.cs: 2.0 attribute fixes.
118
119         * RowUpdatingEventArgs.cs (BaseCommand): Code alignment.
120
121 2007-09-24  Konstantin Triger <kostat@mainsoft.com>
122
123         * DbEnumerator.cs, DbDataRecord.cs: refactoring.
124         * DbDataRecord.cs: GetValue() should return null instead of DBNull.
125
126 2007-08-10  Nagappan A  <anagappan@novell.com>
127
128         * DbDataAdapter.cs (Fill): Fixed method signature.
129
130 2007-07-26  Nagappan A  <anagappan@novell.com>
131
132         * DbConnection.cs: Removed bogus TODO.
133
134 2007-07-22  Nagappan A  <anagappan@novell.com>
135
136         * DbConnection.cs: 2.0 missing features.
137
138         * DbDataAdapter.cs: 2.0 missing features.
139
140 2007-06-30  Gert Driesen  <drieseng@users.sourceforge.net>
141
142         * DbDataAdapter.cs: Marked ICloneable.Clone obsolete to match MS.
143
144 2007-06-21  Nagappan A  <anagappan@novell.com>
145
146         * DbConnectionStringBuilder.cs (Init): Modified the dictionary to
147         use StringComparer.InvariantCultureIgnoreCase.
148         (Add, ContainsKey): Checks whether argument is null or empty string.
149
150 2007-05-08  Adar Wesley <adarw@mainsoft.com>
151
152         * DbProviderFactory.cs: minor refactoring for throwing exceptions
153
154 2007-04-30  Marek Habersack  <mhabersack@novell.com>
155
156         * DbProviderFactories.cs: throw the same exception MS.NET does.
157
158 2007-03-03  Gert Driesen  <drieseng@users.sourceforge.net>
159
160         * DbProviderFactoriesConfigurationHandler.cs: Added support for
161         clear node.
162
163 2007-03-03  Gert driesen  <drieseng@users.sourceforge.net>
164
165         * ConnectionStringsSectionHandler.cs: Removed since the 2.0 config
166         API is in place.
167         * DbProviderFactoriesConfigurationHandler.cs: Fixed name of DataSet
168         to match MS. Removed SupportedClasses column since this is no longer
169         part of 2.0 profile (removed during beta). Throw 
170         ConfigurationErrorsException for unrecognized elements. Mark methods
171         private, and refactor them. Added FIXMEs for missing checks for
172         unrecognized attributes.
173         * DbProviderFactories.cs: Marked constants internal. Replaced spaces
174         with tabs. Use ConfigurationManager.GetSection instead of deprecated
175         ConfigurationSettings.GetConfig.
176
177 2007-02-26  Atsushi Enomoto  <atsushi@ximian.com>
178
179         * DbProviderFactoriesConfigurationHandler.cs : there was a config
180           test that used to be broken.
181
182 2007-02-26  Atsushi Enomoto  <atsushi@ximian.com>
183
184         * DbProviderFactoriesConfigurationHandler.cs : remove "support"
185           attribute check, as it does not really do anything.
186
187 2007-02-19  Atsushi Enomoto  <atsushi@ximian.com>
188
189         * DbProviderFactoriesConfigurationHandler.cs : "support" attribute is
190           optional. Fixed bug #80894.
191
192 2007-02-09  Nagappan A  <anagappan@novell.com>
193
194         * DbProviderFactory.cs: Derived class has to implement all the
195         methods of this class.
196
197         * DbProviderFactoriesConfigurationHandler.cs (Create): Removed
198         bogus MonoTODO
199
200 2007-01-08  Nagappan A  <anagappan@novell.com>
201
202         * DataTableMappingCollection.cs (AddRange):  Implemented missing
203         NET 2.0 API.
204
205         * DbConnection.cs (GetSchema): Implemented missing NET 2.0 API,
206         based on SqlClient implementation.
207
208         * DbConnectionStringBuilder.cs (AppendKeyValuePair): Implemented
209         missing API.
210
211         * DbDataReader.cs (GetData): Implemented missing API.
212         (GetDbDataReader): Implemented missing API.
213
214         * DbCommandBuilder.cs (BuildCache, BuildInformation)
215         (IncludedInInsert, IncludedInUpdate, IncludedInWhereClause)
216         (CreateDeleteCommand, CreateInsertCommand, CreateNewCommand)
217         (CreateUpdateCommand, CreateParameter): Added private methods.
218         (QuotedTableName, GetQuotedString, CatalogLocation)
219         (CatalogSeparator, ConflictOption, DataAdapter, QuotePrefix)
220         (QuoteSuffix, SchemaSeparator): Implemented public properties.
221         (SourceCommand): Implemented private property.
222         (Dispose, RowUpdatingHandler): Implemented protected methods.
223         (GetDeleteCommand, GetInsertCommand, GetUpdateCommand)
224         (QuoteIdentifier, UnquoteIdentifier, RefreshSchema): Implemented
225         public methods.
226
227         * DbProviderFactory.cs: Removed MonoTODO's as the derived class
228         has to implement all the methods in this class.
229
230         * DataAdapter.cs (Fill): Implemented missing method.
231
232         * DbDataAdapter.cs (FillCommandBehavior): Implemented property.
233
234 2006-12-20  Nagappan A  <anagappan@novell.com>
235
236         * DataColumnMapping.cs (GetDataColumnBySchemaAction): Implemented
237         2.0 profile method.
238
239         * DbDataReader.cs: Removed TODO's where ever the implementation is
240         available.
241
242         * RowUpdatedEventArgs.cs: Removed TODO's where ever the
243         implementation is available.
244
245         * DataAdapter.cs (FillInternal): Moved from DbDataAdapater.cs to
246         here.
247         (BuildSchema): Moved from DbDataAdapter.cs.
248         (FillTable): Moved from DbDataAdapter.cs.
249         (OnFillErrorInternal): Implemented new internal method to raise an
250         event.
251         (SetupSchema): Moved from DbDataAdapter.cs.
252         (FillInterl): Moved common implementation from DbDataAdapter.cs.
253         Removed TODO's where ever the implementation is available.
254
255         * DbDataAdapter.cs (OnRowUpdated): Implemented protected method.
256         (OnRowUpdating): Implemented protected method.
257         (CreateFillErrorEvent): Moved to DataAdapter.cs.
258         (Fill): Moved common implementation to DataAdapter.cs.
259         (FillTable): Moved to DataAdapter.cs.
260         (BuildSchema): Moved to DataAdapter.cs.
261         (SetupSchema): Moved to DataAdapter.cs.
262
263 2006-12-11  Miguel de Icaza  <miguel@novell.com>
264
265         * DataAdapter.cs: Removed TODO, NotSupportedException was the
266         correct implementation. 
267
268 2006-11-28  Nagappan A  <anagappan@novell.com>
269
270         * DbDataAdapter.cs: Removed bogus MonoTODOs
271
272         * DataAdapter.cs: Removed bogus MonoTODOs
273         
274 2006-11-15  Nagappan A  <anagappan@novell.com>
275
276         * DbDataAdapter.cs (FillFromReader): Implemented missing API to
277         handle FillErrorEventHandler
278         (DataAdapter): Implemented missing .NET 2.0 function
279         (GetDeleteCommand): Returns DbDataAdapter deleteCommand internal
280         variable.
281         (GetInsertCommand): Returns DbDataAdapter insertCommand internal
282         variable.
283         (GetUpdateCommand): Returns DbDataAdapter updateCommand internal
284         variable.
285
286 2006-09-06  Konstantin Triger <kostat@mainsoft.com>
287
288         * DbDataAdapter.cs: added basic implementation for some 2.0 features.
289
290 2006-08-24  Vladimir Krasnov <vladimirk@mainsoft.com>
291
292         * DbProviderFactories.cs: added TARGET_JVM block to not supported
293         functionality
294
295 2006-08-06  Konstantin Triger <kostat@mainsoft.com>
296
297         * DbDataReader.cs: DbDataReader.Dipose(bool) - implemented.
298
299 2006-07-17  Senganal T <tsenganal@novell.com>
300
301         * Index.cs :
302                 - GetAllRows : Added. Returns all the rows in the current
303                 index.
304                 - GetDistinctRows :Added. Returns all the distinct rows (based
305                 in Key Columns) in the index.
306                 
307 2006-07-13  Senganal T <tsenganal@novell.com>
308
309         * SchemaInfo.cs DbDataAdapter.cs DbConnectionOptions.cs DbParameter.cs 
310         DbMetaDataColumnNames.cs DbTransaction.cs DataTableMapping.cs DataAdapter.cs 
311         FieldNameLookup.cs DbDataRecord.cs DataColumnMappingCollection.cs DbCommand.cs 
312         DbDataPermission.cs DbProviderFactory.cs DbCommandBuilder.cs DbConnectionString.cs 
313         RowUpdatedEventArgs.cs DbDataReader.cs DbConnectionStringBuilder.cs DbConnection.cs 
314         DataTableMappingCollection.cs :
315                 2.0 Api fixes
316
317 2006-06-15  Senganal T <tsenganal@novell.com>
318
319         * Key.cs : 
320                 -Equals : Check for Equality of Sort Order too.
321                 
322 2006-04-07  Senganal T <tsenganal@novell.com>
323
324         * DbDataAdapter.cs :
325                 * Update () : If the Update/Delete Query has a null check,
326                 then populate the parameter value correctly.
327
328 2006-03-20  Senganal T <tsenganal@novell.com>
329
330         * DataAdapter.cs :
331                 - Ctor () : Set Default Values for DataAdapter members
332         * DbDataAdapter.cs : 
333                 - Update () : Call row.AcceptChanges only if AcceptChangesDuringUpdate
334                 is true. Fixes bug #77776
335
336 2006-03-09  Senganal T <tsenganal@novell.com>
337         
338         * Index.cs :
339                 - Update () : Add the new record in the correct position
340
341 2006-03-07  Senganal T <tsenganal@novell.com>
342
343         * Key.cs : 
344                 Reverted the changes from the earlier patch.
345
346 2006-02-22  Senganal T <tsenganal@novell.com>
347
348         * DbDataAdapter.cs :
349                 - FillTable : Move BeginLoadData, EndLoadData outside the loop. Also,
350                 move EndLoadData outsidet try,catch block. FillError is only for errors
351                 occuring during loading the data into datatable.
352         * Key.cs :
353                 - Set Default value of RowStateFilter to (CurrentRos | OriginalRows).
354                 - ContainsVersion : If RowStateFilter is set to default value, return true
355                 for Modified Rows as they can contain Default/Original versions.
356
357 2006-02-18  Raja R Harinath  <harinath@gmail.com>
358
359         * DbConnectionStringBuilder.cs (ICollection.CopyTo): Use
360         _dictionary, not 'this' in cast.
361
362 2006-02-17  Chris Toshok  <toshok@ximian.com>
363
364         * DbDataAdapter.cs: more 2.0 cleanup.
365
366 2006-02-17  Chris Toshok  <toshok@ximian.com>
367
368         * DataAdapter.cs, DataColumnMappingCollection.cs,
369         DataColumnMapping.cs, DataTableMappingCollection.cs,
370         DataTableMapping.cs, DbCommandBuilder.cs,
371         DbConnectionStringBuilder.cs, DbParameterCollection.cs,
372         DbParameter.cs: pretty major attribute work.
373         
374 2006-02-17  Chris Toshok  <toshok@ximian.com>
375
376         * DbProviderFactory.cs: remove two methods.  and mark the
377         DbProviderSupportedClasses ctor as internal since it's not part of
378         the public api.
379
380         * DbTable.cs: remove this class from 2.0 build.. leave it for the
381         JVM build, I guess?
382
383         * RowUpdatingEventArgs.cs: this class isn't abstract in 2.0.
384
385         * RowUpdatedEventArgs.cs: this class isn't abstract in 2.0.
386
387         * SupportedJoinOperators.cs: new 2.0 enum.
388
389         * CatalogLocation.cs: fix enum values.
390
391         * GroupByBehavior.cs: same.
392
393         * IdentifierCase.cs: same.
394
395         * SchemaTableColumn.cs: class is static, not sealed.  and add
396         missing elements.
397         
398         * SchemaTableOptionalColumn.cs: same.
399         
400         * DbDataReader.cs: oops, add back in VisibleFieldCount (i missed
401         it in the corcompare output), add EditorBrowsable attributes all
402         over the place, and fix some method signatures.
403
404         * DbDataUpdatableRecord.cs: remove this 2.0 file.
405
406 2006-02-17  Chris Toshok  <toshok@ximian.com>
407
408         * DbDataReader.cs: remove VisibleFieldCount attribute, and remove
409         IDataReader2 and IDataRecord2 interfaces.
410         
411 2006-02-13  Senganal T  <tsenganal@novell.com>
412
413         * DbDataAdapter.cs :
414                 - FillSchema  : 
415                         - Add table to schema only if MissingSchemaAction is not Ignore
416                         Add schema to table if MissingSchemaAction is set to either of
417                         Add or AddWithKey
418                 - BuildSchema :
419                         - Set the Schema values only if MissingSchemaAction is set to
420                         AddWithKey
421
422 2006-01-31  Senganal T  <tsenganal@novell.com>
423
424         * DbDataAdapter.cs :
425                 - Corrected an error in the prev checkin.. Fixes #77415
426
427 2006-01-27  Senganal T  <tsenganal@novell.com>
428
429         * DbDataAdapter.cs :
430                 - Modified schema population to follow MissingSchemaAction and MissingMappingAction
431                 - Add a column to the Primary Key only if its not a hidden key
432                 - Added some argument checks
433                 - Removed some redundant code
434         * DataAdapter :
435                 - Added argument checks
436         * ExceptionHelper :
437                 - Added InvalidEnumException , a helper function to print error msg
438                 
439 2006-01-11 Boris Kirzner <borisk@mainsoft.com>
440         * Index.cs: removed redundant call to RebuildIndex() in constructor.
441
442 2005-12-12  Konstantin Triger <kostat@mainsoft.com>
443
444         * Key.cs: Added ContainsVersion function, refactoring.
445         * Index.cs: Fixed Reset() to be ready for Update() calls.
446            Otherwise the index can be rebuilt with new values inside the
447            Update() call itself.
448            Fixed FindIndexExact(), Update(), Delete().
449
450 2005-11-22  Konstantin Triger <kostat@mainsoft.com>
451
452         * DbProviderFactory.cs: TARGET_JVM ifdef.
453
454 2005-11-21  Senganal T <tsenganal@novell.com>
455
456         * DbDataAdapter.cs
457         * DbParameter.cs
458         * DbTransaction.cs
459         * DbTable.cs
460         * DbProviderFactories.cs
461         * DbException.cs
462         * DbProviderFactory.cs
463         * DbCommandBuilder.cs
464         * DbDataReader.cs
465         * DbParameterCollection.cs
466                 - Added stubs and other changes for ADO.NET 2.0 compatibility.
467         * DbMetaDataCollectionNames.cs (new file)
468                 - Added DbMetaDataCollectionNames Enumeration 
469
470 2005-10-24  Konstantin Triger <kostat@mainsoft.com>
471
472         * DataContainer.cs: removed extra type validation for object container
473
474 2005-10-14  Senganal T  <tsenganal@novell.com>
475
476         * DbDataAdapter.cs : 
477                 - BuildSchema() : Set the value of DataColumn Property 'AllowDBNull'
478                 as returned by database. Fixes bug#76433. 
479
480 2005-09-21 Boris Kirzner <borisk@mainsoft.com>
481         * Index.cs: 
482                 - Rebuild index immediately after construction.
483                 - Do not add records if they do not padd key filtration.
484                 - Do not attempt to remove records if the are not in the index.
485         * Key.cs:
486                 - Added HasFilter property, CanContain and DependsOn methods.
487                 - Equals() uses filter expression comparison.           
488
489 2005-09-07 Boris Kirzner <borisk@mainsoft.com>
490         * DataContainer.cs: Do not convert value if container type 
491         is System.Object.
492
493 2005-08-08  Gert Driesen  <drieseng@users.sourceforge.net>
494
495         * DbTypes.cs: Marked internal to fix public API.
496
497 2005-08-05  Sureshkumar T  <tsureshkumar@novell.com>
498
499         * DbDataAdapter.cs:
500         - Update (): set parameter values only after getting the
501         appropriate command from command builder. Close reader only if it
502         is not closed before. Use parameter's SourceVersion. Whitespace
503         corrections to comply with standard.
504
505 2005-07-22  Sureshkumar T  <tsureshkumar@novell.com>
506
507         * DataColumnMappingCollection.cs: updated attributes & attribute
508         descriptions to match with masterinfos.
509
510 2005-07-15  Sureshkumar T  <tsureshkumar@novell.com>
511
512         * DataTableMappingCollection.cs: GetTableMappingBySchemaAction:
513         meaningful error message if mapping is missing.
514
515         * DbDataAdapter.cs: Update: meaningful message if table is missing.
516
517 2005-06-22  Sureshkumar T  <tsureshkumar@novell.com>
518
519         * Index.cs: Remove : length for Array.Copy (a, i+1, a, i, length -
520         (i+1)) corrected.
521
522 2005-06-21  Sureshkumar T  <tsureshkumar@novell.com>
523
524         * DbConnectionStringBuilder.cs: Implemented method for parsing
525         connection string through "ConnectionString" property.
526
527         * DbConnectionStringBuilderHelper.cs: Helper class to provide
528         conversion between string=>.net type mapping for connection string
529         builders. The idea is to use between other providers (odbc) as
530         well.
531
532 2005-05-29 Boris Kirzner <borisk@mainsoft.com>
533         * DbCommand.cs - added #ifdef NET_2_0 on DbCommandOptionalFeatures (not used in TARGET_JVM). 
534         * ExceptionHelper.cs - removed java references. Exceptions created on formatted text messages. Code styling fixes.
535         * DbParameterCollection.cs - implemented indexer properties.
536         * DbDataAdapter.cs - delagate exceptions creating to ExceptionHelper.
537         
538 2005-05-25 Konstantin Triger <kostat@mainsoft.com>
539
540       * 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
541
542 2005-05-20 Umadevi S <sumadevi@novell.com>
543         * Added file DbProviderSpecificTypePropertyAttribute.cs
544
545 2005-05-19 Umadevi S <sumadevi@novell.com>
546
547         * RowUpdatingEventArgs.cs - added BaseCommand property for net 2.0
548
549 2005-05-18 Konstantin Triger <kostat@mainsoft.com>
550
551         * DbDataAdapter.cs: Initialize the schema values to defaults if the schema does not contain the information
552
553 2005-05-16  Sureshkumar T  <tsureshkumar@novell.com>
554
555         * RecordCache.cs: quick fix to make build 2.0 profile (follow up
556         for check in 2005-05-16).
557
558 2005-05-16 Konstantin Triger <kostat@mainsoft.com>
559
560         * Index.cs: validation that the updated row belongs to the index
561
562 2005-05-02 Konstantin Triger <kostat@mainsoft.com>
563
564         * DataContainer.cs: 
565                 Added CharDataContainer, SByteDataContainer, UInt16DataContainer, UInt32DataContainer, UInt64DataContainer, DateTimeDataContainer, DecimalDataContainer
566                 SetItemFromDataRecord: Changed to work with ISafeDataRecord or through GetValue to enable conversion
567                 return DBNull.Value when the stored value is null
568         
569         * DbDataAdapter.cs:
570                 Ensure correct order for LoadDataRow
571                 Fixing schema creation
572                 Use NewRowArray API
573         
574         * DbEnumerator.cs:
575                 LoadSchema: Retrieve needed fields only
576         
577         * RecordCache.cs:
578                 Added Rows-to-Records mapping
579                 Added ReadIDataRecord method for correct handling of default/auto increment values
580         
581         * Added Index.cs: Index implementation
582         * Added Key.cs: Index descriptor implementation
583
584
585 2005-04-27  Sureshkumar T  <tsureshkumar@novell.com>
586
587         * DbDataReader.cs: Added static method to construct the schema
588         table with default schema. Could be reused in many places.
589
590 2005-04-22  Sureshkumar T  <tsureshkumar@novell.com>
591
592         * DbDataAdapter.cs: Moved FillTable and BuildSchema as static
593         methods as they are not operating on the current instance. This
594         could be reused to fill any table from a data reader.
595
596         * RecordCache.cs: While disposing records, make sure that the
597         record is not already disposed. i.e. to make sure later the same
598         record is not reused. Implemented a static method to compare two
599         version of records in a container.
600
601 2005-04-18  Sureshkumar T  <tsureshkumar@novell.com>
602
603         * DataAdapter.cs: Implemenetd OnFillError handler.
604
605         * DbDataAdapter.cs: BuildSchema (): the table to be filled might
606         contain few additional columns as well. so mapping length should
607         be columns' length + fields' length.
608
609 2005-03-24  Sureshkumar T  <tsureshkumar@novell.com>
610
611         * DbDataAdapter.cs: Update: If  SourceColumn is null, do not set
612         value for the parameter.
613
614 2005-05-25 Umadevi S <sumadevi@novell.com>
615         * Added DbException.cs
616
617 2005-03-23  Sureshkumar T  <tsureshkumar@novell.com>
618
619         * DbDataAdapter.cs: For Update, disable ReadOnly constraint
620         temporarily before updating the row. Info from Ingo Bauersachs.
621         SkipAllRemainingRows should also skip current row (msdn).
622
623 2005-03-22  Sureshkumar T  <tsureshkumar@novell.com>
624
625         * DbDataAdapter.cs: Update (): update the rows based on the
626         UpdateRowSource property. Process further based on the
627         RowUpdatedEvent handler argument's Status property.
628         Fixes bug #73587. Thanks to mono@rankweg.ch (Ingo Bauersachs) for
629         bug report and patch.
630
631         * RowUpdatedEventArgs.cs: if custom error is not set, throw a
632         default error.
633
634 2005-03-01  Sureshkumar T  <tsureshkumar@novell.com>
635
636         * ConnectionStringsSectionHandler.cs: Added. configuration section
637         handler for section "connectionStrings". This handler is a ad hoc
638         solution till the new configuration API is available in mono.
639
640 2005-02-04  Sureshkumar T  <tsureshkumar@novell.com>
641
642         * DbDataAdapter.cs (Update ()) :
643         - Check for one return result set and map the values back to
644           datatable.
645         - Check for output & return value parameters and update the value
646           back to mapped column
647         - check for recordsAffected only after closing the reader.
648
649 2005-02-02  Sureshkumar T  <tsureshkumar@novell.com>
650
651         * DbConnection.cs: Implement Dispose pattern.
652
653 2005-01-25  Atsushi Enomoto  <atsushi@ximian.com>
654
655         * DbDataPermission.cs : Empty.Union(Empty) is Empty.
656
657 2005-01-14  Atsushi Enomoto  <atsushi@ximian.com>
658
659         * DbDataPermissionAttribute.cs, PermissionHelper.cs :
660           fixed some incompatible type of exception between 2.0 and 1.x.
661         * DataContainer.cs :
662           Wrap exceptions thrown by SetValue() within ArgumentException.
663
664 2004-12-10  Sureshkumar T  <tsureshkumar@novell.com>
665
666         * DbDataAdapter.cs (BuildSchema): Add the primary key schema iff
667         MissingSchemaAction is set to AddWithKey. Also, Add auto increment
668         value from the source table. fixes bug #67757 and #69110.
669
670 2004-11-24  Sureshkumar T  <tsureshkumar@novell.com>
671
672         * DbProviderSupportedClasses.cs: Added correct enum values.
673         * DbConnection.cs: Missing virtual method EnlistTransaction Added.
674         * DbCommand.cs: Implemented ProviderFactory base factory methods.
675
676 2004-11-22  Sureshkumar T  <tsureshkumar@novell.com>
677
678         * DbConnectionStringBuilder.cs: Class for helping creation of db
679         connection strings added.
680
681 2004-10-01  Sureshkumar T  <tsureshkumar@novell.com>
682
683         * DbProviderFactories.cs: Implemented all the stubs. Added functionality for
684         getting available provider factories and creating a specified provider factory.
685
686         * DbProviderFactoriesConfigurationHandler.cs: Added functionality for handling
687         DbProviderFactories configuration section.
688
689         * DbProviderFactory.cs: Added protected constructor. SupportedClasses property
690         is made abstract.
691
692 2004-09-14  Sebastien Pouliot  <sebastien@ximian.com>
693
694         * DbDataPermission.cs: Implemented Intersect, IsSubsetOf and Union.
695         Implementation isn't complete as the restrictions seems to change the
696         expected results (breaking some rules like x.IsSubsetOf (x) == false).
697         Better (real-world) tests cases are required.
698         * PermissionHelper.cs: Fixed small differences between System.Data.dll 
699         validations wrt to mscorlib.dll (XML and PermissionState).
700
701 2004-09-13  Sebastien Pouliot  <sebastien@ximian.com>
702
703         * DbConnectionOptions.cs: New class for Fx 2.0. Partial implementation
704         to support new methods in DBDataPermission.
705         * DbConnectionString.cs: Updated class to split from/inherit 
706         DbConnectionOptions class.
707         * DbDataPermission.cs: Implemented Add, Clear, Copy, ToXml methods and
708         completed constructors.
709         * DbDataPermissionAttribute.cs: Completed/fixed class.
710         * PermissionHelper.cs: Helper methods to create permission classes.
711
712 2004-08-31 Francisco Figueiredo Jr. <fxjrlists@yahoo.com.br>
713         * 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.
714
715 2004-07-21 Umadevi S <sumadevi@novell.com>
716         * DbDataRecord.cs - Fix for bug 58163. Return DBNull instead of null
717
718 2004-07-07 Umadevi S <sumadevi@novell.com>
719         * DataContainer.cs :CheckedforNull before calling the relavant setmethods in each of the
720                 SetItemForDataRecord method for the DateTimeClass
721
722
723 2004-06-24  Atsushi Enomoto  <atsushi@ximian.com>
724
725         * DataColumnMappingCollection.cs : fixed typo.
726         * DbDataAdapter.cs : column mappings were not filled.
727
728 2004-06-24  Atsushi Enomoto  <atsushi@ximian.com>
729
730         * DataTableMapping.cs : Clone() should also clone ColumnMappings.
731
732 2004-06-18 Umadevi S <sumadevi@novell.com>
733         * DataContainer.cs - CheckedforNull before calling the relavant setmethods in each of the 
734                 SetItemForDataRecord method for all the classes.
735
736 2004-06-17  Boris Kirzner  <borisk@mainsoft.com>
737         * RecordCache.cs : Added CopyRecord mathod that copies single record from one table to another.
738
739 2004-06-17  Boris Kirzner  <borisk@mainsoft.com>
740         * Datacontainer.cs : 
741           - Store and retreival of null and DBNull values reviewed.
742           - Added GetInt64 to support AutoIncrement of DataColumn.
743           - Added missing CopyValue method to BitDataContainer.
744           - Added FillValues method to propagate single value to whole container.
745         
746 2004-06-10 Umadevi S <sumadevi@novell.com>
747         * DataTableMappingCollection.cs - fixed nunit testcase errors
748         IndexOfDataSetTable method
749
750 2004-06-09 Umadevi S <sumadevi@novell.com>
751         * DataTableMappingCollection.cs - fixed nunit testcase errors
752         - Add, GetByDataSetTable,Insert, Remove, RemoveAt methods.
753
754 2004-06-09 Umadevi S <sumadevi@novell.com>
755         * DataColumnMappingCollection.cs - fixed nunit testcase errors
756         - GetByDataSetColumn,IndexOfDataSetColumn, Remove methods.      
757
758 2004-06-08 Umadevi S <sumadevi@novell.com>
759         * DataColumnMappingCollection.cs - fixed nunit testcase errors.
760         - remove, removeat, contains methods.
761
762 2004-06-04  Gert Driesen <drieseng@users.sourceforge.net>
763
764         * DataAdapter.cs: added missing protected ctor
765         * DbDataAdapter.cs: added stub for missing protected ctor
766         * DbDataPermission.cs: added stubs for missing protected
767         ctors, added stub for missing Clear method
768
769 2004-06-02  Gert Driesen <drieseng@users.sourceforge.net>
770        * DataColumnMappingCollection.cs: added missing attributes on
771        indexers
772
773 2004-05-27  Boris Kirzner  <borisk@mainsoft.com>
774         * DataContainer.cs : Bug fixes in BitDataContainer.get_Item and StringDataContainer.SetValue .
775
776 2004-05-20  Gert Driesen (drieseng@users.sourceforge.net)
777
778         *  DbDataPermissionAttribute.cs: change AllowMultiple and
779         Inherited to match .NET
780
781 2004-05-19  Boris Kirzner  <borisk@mainsoft.com>
782         * Datacontainer.cs : CompareValues reviewed. set_Item and get_Item of null and DBNull values in case of DataContainers
783         for primitive types reviewed. Added check for null values when reading from IDataRecord.
784         
785 2004-05-19  Boris Kirzner <borisk@mainsoft.com>
786         * RecordCache.cs - added. Each instance of record cache belongs to specific table
787         and manages pool of records ( indexes into data containers) to be used by data rows.
788         * DataContainer.cs - added. Provides implementation for data containers that holds data in arrays 
789         of primitives or objects. Each data container belongs to specific DataColumn.
790         * DbDataAdapter.cs - changes to complete data storage redesign. Bug fix in FillTable 
791         ( to fetch exact number of records required ).
792         
793 2004-05-13 Umadevi S (sumadevi@novell.com)
794         * DbDataPermissionAttribute.cs - Added KeyRestrictions property with a TODO tag
795
796 2004-05-09  Gert Driesen (drieseng@users.sourceforge.net)
797         * ComparerFactory.cs: marked internal
798
799 2003-04-26  Boris Kirzner <borisk@mainsoft.com>
800         * DataColumnMappingCollection.cs : Small fix in exception message thrown.
801           
802 2003-04-25  Boris Kirzner <borisk@mainsoft.com>
803         * DbDataAdapter.cs : Fixed bug in Fill :
804           - Reader can have empty results (fo example from UPDATE or DELETE).
805           - Reader can have results with no rows (SELECT that returns 0 rows but have columns)
806           - In FillTable - skip rows only once for each table.
807         
808 2003-04-14  Juraj Skripsky <juraj@hotfeet.ch>
809         * DbDataAdapter.cs : Refactoring of Fill. New private method
810         FillTable does most of the work now. Use int[] instead of
811         hashtable for mapping. Move creation of tableArray[] outside
812         of loop.
813
814 2004-03-12  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
815
816         * DbDataPermissionAttribute.cs: Added .Net 1.1 marks
817         * DataColumnMapping.cs: DO NOT USE the consts scheme if types can be referenced directly!
818         * DataTableMapping.cs: DO NOT USE the consts scheme if types can be referenced directly!
819         * DataColumnMappingConverter: Added stub
820         * DataTableMappingConverter: Added stub
821
822 2004-03-03  Eran Domb  <erand@miansoft.com>
823         
824         * ComparerFactory.cs : Added.
825         
826 2004-01-10  Atsushi Enomoto  <atsushi@ximian.com>
827
828         * DbDataPermission.cs : tiny fix to pass OleDbPermission.
829
830 2004-01-09  Atsushi Enomoto  <atsushi@ximian.com>
831
832         * DbDataPermission.cs : .ctor(PermissionState state) should not call
833           obsolete .ctor(state, allowBlankPassword). csc reports an error.
834
835 2003-12-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
836
837         * DbDataAdapter.cs: handle MissingShemaAction.AddWithKey, call
838         AcceptChanges in Update when a CommandBuilder is used and
839         correctly fill information about primary keys in FillSchema.
840         Patch from Sergei Malinin (smalinin@amurnet.ru).
841
842 2003-12-23  Tim Coleman <tim@timcoleman.com>
843         * DbConnectionString.cs:
844                 Some implementation
845         * DbProviderFactory.cs:
846                 Fix typo to make CLS compliant
847
848 2003-12-16  Jackson Harper <jackson@ximian.com>
849
850         * SchemaTableOptionalColumn.cs: Add to fix default build
851         
852 2003-12-16  Tim Coleman <tim@timcoleman.com>
853         * CatalogLocation.cs DbCommand.cs DbCommandBuilder.cs
854         * DbCommandOptionalFeatures.cs DbCommandSet.cs DbConnection.cs
855         * DbConnectionString.cs DbDataSourceEnumerator.cs
856         * DbDataUpdatableRecord.cs DbParameter.cs DbParameterCollection.cs
857         * DbProviderConfigurationHandler.cs DbProviderFactories.cs
858         * DbProviderFactoriesConfigurationHandler.cs DbProviderFactory.cs
859         * DbProviderSupportedClasses.cs DbTable.cs DbTransaction.cs
860         * GroupByBehavior.cs IdentifierCase.cs SchemaLocation.cs
861         * SchemaTableColumn.cs:
862                 New stubs added for .NET 1.2
863         * DataAdapter.cs DataColumnMapping.cs DataColumnMappingCollection.cs
864         * DataTableMapping.cs DataTableMappingCollection.cs DbDataAdapter.cs
865         * DbDataPermission.cs DbDataPermissionAttribute.cs DbDataRecord.cs
866         * FieldNameLookup.cs SchemaInfo.cs:
867                 Changes made for .NET 1.2
868
869 2003-10-22  Eran Domb  <erand@miansoft.com>
870         * DbDataAdapter.cs : Check if there is mapping to avoid exception.
871
872 2003-11-26  Tim Coleman <tim@timcoleman.com>
873         * DbDataReader.cs: Add new stub class
874
875 2003-11-23  Pedro Martínez Juliá  <yoros@wanadoo.es>
876
877         * DbDataAdapter.cs: Call command dispose in self dispose method. We
878         need to dispose the connections and other stuff stored in the
879         commands.
880
881 2003-11-10  Pedro Martínez Juliá  <yoros@wanadoo.es>
882
883         * DataColumnMappingCollection.cs: Fix a missing exception when the
884         required mapping is not in the collection. MS.NET throws an
885         exception there.
886
887 2003-10-22  Eran Domb  <erand@miansoft.com>
888
889         * DbDataAdapter.cs (Fill): add only the mapped column to the dataTable (not all columns of dataReader).
890             Also closing the dataReader if an exception is thrown.
891         (Fill): the same as above.
892         (SetupSchema): in now return string (the table name). 
893         (GetFillParameters): fix a bug.
894         (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.
895         (Update): first open the connection if needed. Catch an exception of the ExecuteQuery.
896         
897
898 2003-09-30  Duncan Mak  <duncan@ximian.com>
899
900         Patch from Eran Domb <eran@mainsoft.com>.
901         
902         * DbDataAdapter.cs (Fill): Fixed an Exception from being thrown.
903
904 2003-09-25  Duncan Mak  <duncan@ximian.com>
905
906         * DbDataAdapter.cs (Fill): Patch from Eran Domb, <eran@mainsoft.com>.
907         Fixes a possible NullReferenceException, more details here:
908
909         http://lists.ximian.com/archives/public/mono-devel-list/2003-September/002116.html
910
911 2003-09-21  eran <erand@mainsoft.com>
912
913         * DbDataRecord.cs: The method
914         System.Data.Common.DbDataRecord.GetValues(object[] values) did not
915         put the values of the DbDataRecord into values parameter.
916
917 2003-08-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
918
919         * DbDataAdapter.cs: provide a Type for ToArray to avoid invalid cast
920         exception. Thanks to Mark Easton <measton@tebiki.co.uk>.
921
922 2003-07-31  Duncan Mak  <duncan@ximian.com>
923
924         * DataAdapter.cs (CloneInternals): Mark with ObsoleteAttribute for
925         NET_1_1.
926
927 2003-03-21  Alan Tam <Tam@SiuLung.com>
928
929         * DbDataAdapter.cs: Update now uses correct DataRowVersion
930         when accessing the data.
931
932 2003-03-17  Aleksey Demakov <avd@openlinksw.com>
933
934         * DbDataAdapter.cs: BuildSchema now uses ColumnName instead
935         of BaseColumnName (bug #39830) for DataColumn names.
936         BaseTableName is no longer taken into account as well.
937
938 2003-02-28  Aleksey Demakov <avd@openlinksw.com>
939
940         * DbDataAdapter.cs: Update (DataSet) updates the default
941         table only.
942
943 2003-02-25  Alan Tam <Tam@SiuLung.com>
944         
945         * DbDataAdapter.cs: Added support for filling when schema is present.
946         Fixed incorrect behavior when ColumnMapping is present
947         when more than one fields have the same name. Implemented Dispose.
948         Fixed error when there is no ColumnMapping at all.
949         Still have some problems in finding the correct TableMapping
950         because the SourceTable name is not present in BuildSchema
951
952 2003-02-24  Aleksey Demakov <avd@openlinksw.com>
953
954         * DbDataAdapter.cs: The original code might pass a null DataTableMapping
955         value which is then used to create a RowUpdatingEventArgs
956         instance. So RowUpdatingEvent handler (for instance
957         CommandBuilder) could get null DataTableMapping which
958         might be unexpected. The patch makes sure that a non-null
959         DataTableMapping is passed.
960
961 2003-01-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
962
963         * DbEnumerator.cs: why does the runtime throw an invalid cast here? The
964         object is an Int16... Gotta fill a bug report and when fixed undo this
965         patch.
966
967 2003-01-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
968
969         * DbDataRecord.cs: return DbNull.Value in GetValue () if value is null.
970
971 2002-10-31  Daniel Morgan <danmorg@sc.rr.com>
972
973         * SchemaInfo.cs: added missing properties to fix mcs build
974
975 2002-05-05  Miguel de Icaza  <miguel@ximian.com>
976
977         * DataTableMapping.cs, DataTableMappingCollection.cs: comment out
978         interfaces we do not implement yet.
979
980         * DbDataAdapter.cs: Stub IEnumerable, comment out interfaces
981         we do not implement yet.
982
983         * DbDataPermissionAttribute.cs: call base constructor.
984