svn path=/branches/mono-1-1-9/mcs/; revision=51207
[mono.git] / mcs / class / System.Data / System.Data.Common / ChangeLog
1 2005-09-07 Boris Kirzner <borisk@mainsoft.com>
2         * DataContainer.cs: Do not convert value if container type 
3         is System.Object.
4
5 2005-08-08  Gert Driesen  <drieseng@users.sourceforge.net>
6
7         * DbTypes.cs: Marked internal to fix public API.
8
9 2005-08-05  Sureshkumar T  <tsureshkumar@novell.com>
10
11         * DbDataAdapter.cs:
12         - Update (): set parameter values only after getting the
13         appropriate command from command builder. Close reader only if it
14         is not closed before. Use parameter's SourceVersion. Whitespace
15         corrections to comply with standard.
16
17 2005-07-22  Sureshkumar T  <tsureshkumar@novell.com>
18
19         * DataColumnMappingCollection.cs: updated attributes & attribute
20         descriptions to match with masterinfos.
21
22 2005-07-15  Sureshkumar T  <tsureshkumar@novell.com>
23
24         * DataTableMappingCollection.cs: GetTableMappingBySchemaAction:
25         meaningful error message if mapping is missing.
26
27         * DbDataAdapter.cs: Update: meaningful message if table is missing.
28
29 2005-06-22  Sureshkumar T  <tsureshkumar@novell.com>
30
31         * Index.cs: Remove : length for Array.Copy (a, i+1, a, i, length -
32         (i+1)) corrected.
33
34 2005-06-21  Sureshkumar T  <tsureshkumar@novell.com>
35
36         * DbConnectionStringBuilder.cs: Implemented method for parsing
37         connection string through "ConnectionString" property.
38
39         * DbConnectionStringBuilderHelper.cs: Helper class to provide
40         conversion between string=>.net type mapping for connection string
41         builders. The idea is to use between other providers (odbc) as
42         well.
43
44 2005-05-29 Boris Kirzner <borisk@mainsoft.com>
45         * DbCommand.cs - added #ifdef NET_2_0 on DbCommandOptionalFeatures (not used in TARGET_JVM). 
46         * ExceptionHelper.cs - removed java references. Exceptions created on formatted text messages. Code styling fixes.
47         * DbParameterCollection.cs - implemented indexer properties.
48         * DbDataAdapter.cs - delagate exceptions creating to ExceptionHelper.
49         
50 2005-05-25 Konstantin Triger <kostat@mainsoft.com>
51
52       * 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
53
54 2005-05-20 Umadevi S <sumadevi@novell.com>
55         * Added file DbProviderSpecificTypePropertyAttribute.cs
56
57 2005-05-19 Umadevi S <sumadevi@novell.com>
58
59         * RowUpdatingEventArgs.cs - added BaseCommand property for net 2.0
60
61 2005-05-18 Konstantin Triger <kostat@mainsoft.com>
62
63         * DbDataAdapter.cs: Initialize the schema values to defaults if the schema does not contain the information
64
65 2005-05-16  Sureshkumar T  <tsureshkumar@novell.com>
66
67         * RecordCache.cs: quick fix to make build 2.0 profile (follow up
68         for check in 2005-05-16).
69
70 2005-05-16 Konstantin Triger <kostat@mainsoft.com>
71
72         * Index.cs: validation that the updated row belongs to the index
73
74 2005-05-02 Konstantin Triger <kostat@mainsoft.com>
75
76         * DataContainer.cs: 
77                 Added CharDataContainer, SByteDataContainer, UInt16DataContainer, UInt32DataContainer, UInt64DataContainer, DateTimeDataContainer, DecimalDataContainer
78                 SetItemFromDataRecord: Changed to work with ISafeDataRecord or through GetValue to enable conversion
79                 return DBNull.Value when the stored value is null
80         
81         * DbDataAdapter.cs:
82                 Ensure correct order for LoadDataRow
83                 Fixing schema creation
84                 Use NewRowArray API
85         
86         * DbEnumerator.cs:
87                 LoadSchema: Retrieve needed fields only
88         
89         * RecordCache.cs:
90                 Added Rows-to-Records mapping
91                 Added ReadIDataRecord method for correct handling of default/auto increment values
92         
93         * Added Index.cs: Index implementation
94         * Added Key.cs: Index descriptor implementation
95
96
97 2005-04-27  Sureshkumar T  <tsureshkumar@novell.com>
98
99         * DbDataReader.cs: Added static method to construct the schema
100         table with default schema. Could be reused in many places.
101
102 2005-04-22  Sureshkumar T  <tsureshkumar@novell.com>
103
104         * DbDataAdapter.cs: Moved FillTable and BuildSchema as static
105         methods as they are not operating on the current instance. This
106         could be reused to fill any table from a data reader.
107
108         * RecordCache.cs: While disposing records, make sure that the
109         record is not already disposed. i.e. to make sure later the same
110         record is not reused. Implemented a static method to compare two
111         version of records in a container.
112
113 2005-04-18  Sureshkumar T  <tsureshkumar@novell.com>
114
115         * DataAdapter.cs: Implemenetd OnFillError handler.
116
117         * DbDataAdapter.cs: BuildSchema (): the table to be filled might
118         contain few additional columns as well. so mapping length should
119         be columns' length + fields' length.
120
121 2005-03-24  Sureshkumar T  <tsureshkumar@novell.com>
122
123         * DbDataAdapter.cs: Update: If  SourceColumn is null, do not set
124         value for the parameter.
125
126 2005-05-25 Umadevi S <sumadevi@novell.com>
127         * Added DbException.cs
128
129 2005-03-23  Sureshkumar T  <tsureshkumar@novell.com>
130
131         * DbDataAdapter.cs: For Update, disable ReadOnly constraint
132         temporarily before updating the row. Info from Ingo Bauersachs.
133         SkipAllRemainingRows should also skip current row (msdn).
134
135 2005-03-22  Sureshkumar T  <tsureshkumar@novell.com>
136
137         * DbDataAdapter.cs: Update (): update the rows based on the
138         UpdateRowSource property. Process further based on the
139         RowUpdatedEvent handler argument's Status property.
140         Fixes bug #73587. Thanks to mono@rankweg.ch (Ingo Bauersachs) for
141         bug report and patch.
142
143         * RowUpdatedEventArgs.cs: if custom error is not set, throw a
144         default error.
145
146 2005-03-01  Sureshkumar T  <tsureshkumar@novell.com>
147
148         * ConnectionStringsSectionHandler.cs: Added. configuration section
149         handler for section "connectionStrings". This handler is a ad hoc
150         solution till the new configuration API is available in mono.
151
152 2005-02-04  Sureshkumar T  <tsureshkumar@novell.com>
153
154         * DbDataAdapter.cs (Update ()) :
155         - Check for one return result set and map the values back to
156           datatable.
157         - Check for output & return value parameters and update the value
158           back to mapped column
159         - check for recordsAffected only after closing the reader.
160
161 2005-02-02  Sureshkumar T  <tsureshkumar@novell.com>
162
163         * DbConnection.cs: Implement Dispose pattern.
164
165 2005-01-25  Atsushi Enomoto  <atsushi@ximian.com>
166
167         * DbDataPermission.cs : Empty.Union(Empty) is Empty.
168
169 2005-01-14  Atsushi Enomoto  <atsushi@ximian.com>
170
171         * DbDataPermissionAttribute.cs, PermissionHelper.cs :
172           fixed some incompatible type of exception between 2.0 and 1.x.
173         * DataContainer.cs :
174           Wrap exceptions thrown by SetValue() within ArgumentException.
175
176 2004-12-10  Sureshkumar T  <tsureshkumar@novell.com>
177
178         * DbDataAdapter.cs (BuildSchema): Add the primary key schema iff
179         MissingSchemaAction is set to AddWithKey. Also, Add auto increment
180         value from the source table. fixes bug #67757 and #69110.
181
182 2004-11-24  Sureshkumar T  <tsureshkumar@novell.com>
183
184         * DbProviderSupportedClasses.cs: Added correct enum values.
185         * DbConnection.cs: Missing virtual method EnlistTransaction Added.
186         * DbCommand.cs: Implemented ProviderFactory base factory methods.
187
188 2004-11-22  Sureshkumar T  <tsureshkumar@novell.com>
189
190         * DbConnectionStringBuilder.cs: Class for helping creation of db
191         connection strings added.
192
193 2004-10-01  Sureshkumar T  <tsureshkumar@novell.com>
194
195         * DbProviderFactories.cs: Implemented all the stubs. Added functionality for
196         getting available provider factories and creating a specified provider factory.
197
198         * DbProviderFactoriesConfigurationHandler.cs: Added functionality for handling
199         DbProviderFactories configuration section.
200
201         * DbProviderFactory.cs: Added protected constructor. SupportedClasses property
202         is made abstract.
203
204 2004-09-14  Sebastien Pouliot  <sebastien@ximian.com>
205
206         * DbDataPermission.cs: Implemented Intersect, IsSubsetOf and Union.
207         Implementation isn't complete as the restrictions seems to change the
208         expected results (breaking some rules like x.IsSubsetOf (x) == false).
209         Better (real-world) tests cases are required.
210         * PermissionHelper.cs: Fixed small differences between System.Data.dll 
211         validations wrt to mscorlib.dll (XML and PermissionState).
212
213 2004-09-13  Sebastien Pouliot  <sebastien@ximian.com>
214
215         * DbConnectionOptions.cs: New class for Fx 2.0. Partial implementation
216         to support new methods in DBDataPermission.
217         * DbConnectionString.cs: Updated class to split from/inherit 
218         DbConnectionOptions class.
219         * DbDataPermission.cs: Implemented Add, Clear, Copy, ToXml methods and
220         completed constructors.
221         * DbDataPermissionAttribute.cs: Completed/fixed class.
222         * PermissionHelper.cs: Helper methods to create permission classes.
223
224 2004-08-31 Francisco Figueiredo Jr. <fxjrlists@yahoo.com.br>
225         * 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.
226
227 2004-07-21 Umadevi S <sumadevi@novell.com>
228         * DbDataRecord.cs - Fix for bug 58163. Return DBNull instead of null
229
230 2004-07-07 Umadevi S <sumadevi@novell.com>
231         * DataContainer.cs :CheckedforNull before calling the relavant setmethods in each of the
232                 SetItemForDataRecord method for the DateTimeClass
233
234
235 2004-06-24  Atsushi Enomoto  <atsushi@ximian.com>
236
237         * DataColumnMappingCollection.cs : fixed typo.
238         * DbDataAdapter.cs : column mappings were not filled.
239
240 2004-06-24  Atsushi Enomoto  <atsushi@ximian.com>
241
242         * DataTableMapping.cs : Clone() should also clone ColumnMappings.
243
244 2004-06-18 Umadevi S <sumadevi@novell.com>
245         * DataContainer.cs - CheckedforNull before calling the relavant setmethods in each of the 
246                 SetItemForDataRecord method for all the classes.
247
248 2004-06-17  Boris Kirzner  <borisk@mainsoft.com>
249         * RecordCache.cs : Added CopyRecord mathod that copies single record from one table to another.
250
251 2004-06-17  Boris Kirzner  <borisk@mainsoft.com>
252         * Datacontainer.cs : 
253           - Store and retreival of null and DBNull values reviewed.
254           - Added GetInt64 to support AutoIncrement of DataColumn.
255           - Added missing CopyValue method to BitDataContainer.
256           - Added FillValues method to propagate single value to whole container.
257         
258 2004-06-10 Umadevi S <sumadevi@novell.com>
259         * DataTableMappingCollection.cs - fixed nunit testcase errors
260         IndexOfDataSetTable method
261
262 2004-06-09 Umadevi S <sumadevi@novell.com>
263         * DataTableMappingCollection.cs - fixed nunit testcase errors
264         - Add, GetByDataSetTable,Insert, Remove, RemoveAt methods.
265
266 2004-06-09 Umadevi S <sumadevi@novell.com>
267         * DataColumnMappingCollection.cs - fixed nunit testcase errors
268         - GetByDataSetColumn,IndexOfDataSetColumn, Remove methods.      
269
270 2004-06-08 Umadevi S <sumadevi@novell.com>
271         * DataColumnMappingCollection.cs - fixed nunit testcase errors.
272         - remove, removeat, contains methods.
273
274 2004-06-04  Gert Driesen <drieseng@users.sourceforge.net>
275
276         * DataAdapter.cs: added missing protected ctor
277         * DbDataAdapter.cs: added stub for missing protected ctor
278         * DbDataPermission.cs: added stubs for missing protected
279         ctors, added stub for missing Clear method
280
281 2004-06-02  Gert Driesen <drieseng@users.sourceforge.net>
282        * DataColumnMappingCollection.cs: added missing attributes on
283        indexers
284
285 2004-05-27  Boris Kirzner  <borisk@mainsoft.com>
286         * DataContainer.cs : Bug fixes in BitDataContainer.get_Item and StringDataContainer.SetValue .
287
288 2004-05-20  Gert Driesen (drieseng@users.sourceforge.net)
289
290         *  DbDataPermissionAttribute.cs: change AllowMultiple and
291         Inherited to match .NET
292
293 2004-05-19  Boris Kirzner  <borisk@mainsoft.com>
294         * Datacontainer.cs : CompareValues reviewed. set_Item and get_Item of null and DBNull values in case of DataContainers
295         for primitive types reviewed. Added check for null values when reading from IDataRecord.
296         
297 2004-05-19  Boris Kirzner <borisk@mainsoft.com>
298         * RecordCache.cs - added. Each instance of record cache belongs to specific table
299         and manages pool of records ( indexes into data containers) to be used by data rows.
300         * DataContainer.cs - added. Provides implementation for data containers that holds data in arrays 
301         of primitives or objects. Each data container belongs to specific DataColumn.
302         * DbDataAdapter.cs - changes to complete data storage redesign. Bug fix in FillTable 
303         ( to fetch exact number of records required ).
304         
305 2004-05-13 Umadevi S (sumadevi@novell.com)
306         * DbDataPermissionAttribute.cs - Added KeyRestrictions property with a TODO tag
307
308 2004-05-09  Gert Driesen (drieseng@users.sourceforge.net)
309         * ComparerFactory.cs: marked internal
310
311 2003-04-26  Boris Kirzner <borisk@mainsoft.com>
312         * DataColumnMappingCollection.cs : Small fix in exception message thrown.
313           
314 2003-04-25  Boris Kirzner <borisk@mainsoft.com>
315         * DbDataAdapter.cs : Fixed bug in Fill :
316           - Reader can have empty results (fo example from UPDATE or DELETE).
317           - Reader can have results with no rows (SELECT that returns 0 rows but have columns)
318           - In FillTable - skip rows only once for each table.
319         
320 2003-04-14  Juraj Skripsky <juraj@hotfeet.ch>
321         * DbDataAdapter.cs : Refactoring of Fill. New private method
322         FillTable does most of the work now. Use int[] instead of
323         hashtable for mapping. Move creation of tableArray[] outside
324         of loop.
325
326 2004-03-12  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
327
328         * DbDataPermissionAttribute.cs: Added .Net 1.1 marks
329         * DataColumnMapping.cs: DO NOT USE the consts scheme if types can be referenced directly!
330         * DataTableMapping.cs: DO NOT USE the consts scheme if types can be referenced directly!
331         * DataColumnMappingConverter: Added stub
332         * DataTableMappingConverter: Added stub
333
334 2004-03-03  Eran Domb  <erand@miansoft.com>
335         
336         * ComparerFactory.cs : Added.
337         
338 2004-01-10  Atsushi Enomoto  <atsushi@ximian.com>
339
340         * DbDataPermission.cs : tiny fix to pass OleDbPermission.
341
342 2004-01-09  Atsushi Enomoto  <atsushi@ximian.com>
343
344         * DbDataPermission.cs : .ctor(PermissionState state) should not call
345           obsolete .ctor(state, allowBlankPassword). csc reports an error.
346
347 2003-12-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
348
349         * DbDataAdapter.cs: handle MissingShemaAction.AddWithKey, call
350         AcceptChanges in Update when a CommandBuilder is used and
351         correctly fill information about primary keys in FillSchema.
352         Patch from Sergei Malinin (smalinin@amurnet.ru).
353
354 2003-12-23  Tim Coleman <tim@timcoleman.com>
355         * DbConnectionString.cs:
356                 Some implementation
357         * DbProviderFactory.cs:
358                 Fix typo to make CLS compliant
359
360 2003-12-16  Jackson Harper <jackson@ximian.com>
361
362         * SchemaTableOptionalColumn.cs: Add to fix default build
363         
364 2003-12-16  Tim Coleman <tim@timcoleman.com>
365         * CatalogLocation.cs DbCommand.cs DbCommandBuilder.cs
366         * DbCommandOptionalFeatures.cs DbCommandSet.cs DbConnection.cs
367         * DbConnectionString.cs DbDataSourceEnumerator.cs
368         * DbDataUpdatableRecord.cs DbParameter.cs DbParameterCollection.cs
369         * DbProviderConfigurationHandler.cs DbProviderFactories.cs
370         * DbProviderFactoriesConfigurationHandler.cs DbProviderFactory.cs
371         * DbProviderSupportedClasses.cs DbTable.cs DbTransaction.cs
372         * GroupByBehavior.cs IdentifierCase.cs SchemaLocation.cs
373         * SchemaTableColumn.cs:
374                 New stubs added for .NET 1.2
375         * DataAdapter.cs DataColumnMapping.cs DataColumnMappingCollection.cs
376         * DataTableMapping.cs DataTableMappingCollection.cs DbDataAdapter.cs
377         * DbDataPermission.cs DbDataPermissionAttribute.cs DbDataRecord.cs
378         * FieldNameLookup.cs SchemaInfo.cs:
379                 Changes made for .NET 1.2
380
381 2003-10-22  Eran Domb  <erand@miansoft.com>
382         * DbDataAdapter.cs : Check if there is mapping to avoid exception.
383
384 2003-11-26  Tim Coleman <tim@timcoleman.com>
385         * DbDataReader.cs: Add new stub class
386
387 2003-11-23  Pedro Martínez Juliá  <yoros@wanadoo.es>
388
389         * DbDataAdapter.cs: Call command dispose in self dispose method. We
390         need to dispose the connections and other stuff stored in the
391         commands.
392
393 2003-11-10  Pedro Martínez Juliá  <yoros@wanadoo.es>
394
395         * DataColumnMappingCollection.cs: Fix a missing exception when the
396         required mapping is not in the collection. MS.NET throws an
397         exception there.
398
399 2003-10-22  Eran Domb  <erand@miansoft.com>
400
401         * DbDataAdapter.cs (Fill): add only the mapped column to the dataTable (not all columns of dataReader).
402             Also closing the dataReader if an exception is thrown.
403         (Fill): the same as above.
404         (SetupSchema): in now return string (the table name). 
405         (GetFillParameters): fix a bug.
406         (BuildSchema) \96 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.
407         (Update): first open the connection if needed. Catch an exception of the ExecuteQuery.
408         
409
410 2003-09-30  Duncan Mak  <duncan@ximian.com>
411
412         Patch from Eran Domb <eran@mainsoft.com>.
413         
414         * DbDataAdapter.cs (Fill): Fixed an Exception from being thrown.
415
416 2003-09-25  Duncan Mak  <duncan@ximian.com>
417
418         * DbDataAdapter.cs (Fill): Patch from Eran Domb, <eran@mainsoft.com>.
419         Fixes a possible NullReferenceException, more details here:
420
421         http://lists.ximian.com/archives/public/mono-devel-list/2003-September/002116.html
422
423 2003-09-21  eran <erand@mainsoft.com>
424
425         * DbDataRecord.cs: The method
426         System.Data.Common.DbDataRecord.GetValues(object[] values) did not
427         put the values of the DbDataRecord into values parameter.
428
429 2003-08-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
430
431         * DbDataAdapter.cs: provide a Type for ToArray to avoid invalid cast
432         exception. Thanks to Mark Easton <measton@tebiki.co.uk>.
433
434 2003-07-31  Duncan Mak  <duncan@ximian.com>
435
436         * DataAdapter.cs (CloneInternals): Mark with ObsoleteAttribute for
437         NET_1_1.
438
439 2003-03-21  Alan Tam <Tam@SiuLung.com>
440
441         * DbDataAdapter.cs: Update now uses correct DataRowVersion
442         when accessing the data.
443
444 2003-03-17  Aleksey Demakov <avd@openlinksw.com>
445
446         * DbDataAdapter.cs: BuildSchema now uses ColumnName instead
447         of BaseColumnName (bug #39830) for DataColumn names.
448         BaseTableName is no longer taken into account as well.
449
450 2003-02-28  Aleksey Demakov <avd@openlinksw.com>
451
452         * DbDataAdapter.cs: Update (DataSet) updates the default
453         table only.
454
455 2003-02-25  Alan Tam <Tam@SiuLung.com>
456         
457         * DbDataAdapter.cs: Added support for filling when schema is present.
458         Fixed incorrect behavior when ColumnMapping is present
459         when more than one fields have the same name. Implemented Dispose.
460         Fixed error when there is no ColumnMapping at all.
461         Still have some problems in finding the correct TableMapping
462         because the SourceTable name is not present in BuildSchema
463
464 2003-02-24  Aleksey Demakov <avd@openlinksw.com>
465
466         * DbDataAdapter.cs: The original code might pass a null DataTableMapping
467         value which is then used to create a RowUpdatingEventArgs
468         instance. So RowUpdatingEvent handler (for instance
469         CommandBuilder) could get null DataTableMapping which
470         might be unexpected. The patch makes sure that a non-null
471         DataTableMapping is passed.
472
473 2003-01-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
474
475         * DbEnumerator.cs: why does the runtime throw an invalid cast here? The
476         object is an Int16... Gotta fill a bug report and when fixed undo this
477         patch.
478
479 2003-01-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
480
481         * DbDataRecord.cs: return DbNull.Value in GetValue () if value is null.
482
483 2002-10-31  Daniel Morgan <danmorg@sc.rr.com>
484
485         * SchemaInfo.cs: added missing properties to fix mcs build
486
487 2002-05-05  Miguel de Icaza  <miguel@ximian.com>
488
489         * DataTableMapping.cs, DataTableMappingCollection.cs: comment out
490         interfaces we do not implement yet.
491
492         * DbDataAdapter.cs: Stub IEnumerable, comment out interfaces
493         we do not implement yet.
494
495         * DbDataPermissionAttribute.cs: call base constructor.
496