2002-08-15 Rodrigo Moya <rodrigo@ximian.com>
[mono.git] / mcs / class / System.Data / ChangeLog
1 2002-08-15  Rodrigo Moya <rodrigo@ximian.com>
2
3         * System.Data.OleDb/OleDbParameterCollection.cs (GdaParameterList):
4         create an empty GdaParameterList.
5
6         * System.Data.OleDb/OleDbCommand.cs (ExecuteReader): check values
7         for NULL before passing them to Marshal.PtrToStructure, which issues
8         an exception if the value is NULL.
9
10 2002-08-15  Rodrigo Moya <rodrigo@ximian.com>
11
12         * System.Data/UniqueConstraint.cs (UniqueConstraint): commented
13         unreachable code to avoid compiler warning.
14
15         * System.Data.OleDb/libgda.cs (GdaList): added new internal class.
16
17         * System.Data.OleDb/OleDbConnection.cs (DataSource): implemented.
18         (OpenReader): removed internal method.
19
20         * System.Data.OleDb/OleDbCommand.cs (ExecuteReader): split correctly
21         the list of returned data models.
22
23 2002-08-15  Franklin Wise <gracenote@earthlink.net>
24         
25         * System.Data/Constraint.cs: Added helper virtual functions
26
27         * System.Data/ConstraintCollection.cs: Improved constraint removal,
28         validation.  Removed specific knowledge of subclasses of 
29         Constraint.
30
31         * System.Data/DataColumn.cs: Added static helper function to compare
32         if two DataColumn arrays are the same.
33
34         * System.Data/ForeignKeyConstraint.cs: Continued to flush out.
35
36         * System.Data/UniqueConstraint.cs: Implemented.  Still some constraint
37         validation to do.
38         
39 2002-08-13  Franklin Wise <gracenote@earthlink.net>
40
41         * System.Data/DataRow.cs: Added several fixme tags.
42         
43 2002-08-13  Rodrigo Moya <rodrigo@ximian.com>
44
45         * System.Data.SqlClient/SqlDataAdapter.cs (DeleteCommand,
46         InsertCommand, SelectCommand, UpdateCommand): removed 'new' keyword
47         to avoid compiler warnings.
48
49 2002-08-12  Franklin Wise <gracenote@earthlink.net>
50
51         * System.Data/Constraint.cs: Implemented
52
53         * System.Data/UniqueConstraint.cs: GetHashCode() &
54         special case Ctor. Still need to be implemented. LAMESPEC tags
55         added.
56
57         * System.Data/ConstraintCollection.cs: Clear() &
58         AddRange() need to be finished. Several LAMESPEC tags.
59
60         * Allow Constraint collection to be created in DataTable.
61
62         * System.Data/ForeignKeyConstraint: Added a couple of
63         helper functions.
64
65         * System.Data/DataColumnCollection New/Added DataColumns now have
66         Table property set.
67
68 2002-08-11  Rodrigo Moya <rodrigo@ximian.com>
69
70         * System.Data.OleDb/libgda.cs: added some GdaValue functions.
71
72         * System.Data.OleDb/OleDbCommand.cs (OpenReader): removed this
73         internal method, since we don't need it.
74         (ExecuteReader): call SetupGdaCommand before executing the command
75         via libgda functions.
76         (ExecuteScalar): implemented.
77
78         * System.Data.OleDb/OleDbDateReader.cs (OleDbDataReader): removed call
79         to OleDbCommand.OpenReader.
80         (GetBoolean): implemented.
81
82 2002-08-08  Franklin Wise <gracenote@earthlink.net>
83
84         * System.Data/IDbComand.cs: IDbCommand now inherits IDisposable
85
86         * System.Data/IDbConnection.cs: IDbConnection now inherits IDisposable
87
88         * System.Data.SqlTypes/SqlCompareOptions.cs: Enum now set to correct
89         values.
90
91 2002-08-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
92
93         * System.Data.OleDb/OleDbConnection.cs: little fixes to make it work
94         and don't show a warning in Open.
95
96         * System.Data.OleDb/TestOleDb.cs: added Close.
97
98 2002-08-05  Rodrigo Moya <rodrigo@ximian.com>
99
100         * System.Data.OleDb/OleDbConnection.cs (ConnectionString,
101         ConnectionTimeout, ServerVersion, GdaConnection):
102         corrected style.
103         (OleDbConnection): call libgda.gda_init on constructor.
104
105         * System.Data.OleDb/libgda.cs (libgda): removed static constructor,
106         which wasn't been called.
107
108         * System.Data.OleDb/TestOleDb.cs (TestOleDb): updated to really
109         make some tests.
110
111 2002-08-04  Rodrigo Moya <rodrigo@ximian.com>
112
113         * list: added missing System.Data.OleDb and
114         System.Data.Common files.
115
116         * System.Data.OleDb/ChangeLog: removed and merged with
117         System.Data's ChangeLog.
118
119         * System.Data.OleDb/OleDbDataAdapter.cs:
120         * System.Data.OleDb/OleDbPermission.cs: compilation fixes.
121
122 2002-07-30  Rodrigo Moya <rodrigo@ximian.com>
123
124         * System.Data.OleDb/OleDbDataReader.cs (FieldCount): implemented.
125         (IsClosed, Item, RecordsAffected): implemented some properties.
126
127         * libgda.cs: added GdaDataModel methods.
128
129 2002-07-29  Rodrigo Moya <rodrigo@ximian.com>
130
131         * System.Data.OleDb/OleDbDataReader.cs (OleDbDataReader constructor): changed to receive
132         a second argument (ArrayList results).
133         (NextResult): implemented.
134
135         * System.Data.OleDb/OleDbCommand.cs: don't store the ArrayList of results, since we'll
136         pass that to the OleDbDataReader.
137         (OleDbCommand constructor): don't create the ArrayList of results.
138         (GdaResults): removed property.
139         (ExecuteReader): create a temporary ArrayList and pass that to the
140         OleDbDataReader constructor.
141
142 2002-07-28  Rodrigo Moya <rodrigo@ximian.com>
143
144         * System.Data.OleDb/OleDbCommand.cs (ExecuteReader):
145         (CreateParameter): implemented IDbCommand methods.
146         (CommandText): don't create many GdaCommand's, only one is needed.
147         (ExecuteNonQuery): set up the internal GDA command object.
148         (ExecuteReader): use correctly the unique GDA command object.
149
150         * System.Data.OleDb/libgda.cs: added new libgda calls.
151
152 2002-07-27  Rodrigo Moya <rodrigo@ximian.com>
153
154         * System.Data.OleDb/OleDbConnection.cs (CreateCommand):
155         (BeginTransaction): implemented IDbConnection methods.
156
157 2002-07-12  Rodrigo Moya <rodrigo@ximian.com>
158
159         * list: added System.Data.OleDb files to file list.
160
161 2002-07-11  Rodrigo Moya <rodrigo@ximian.com>
162
163         * System.Data.OleDb/libgda.cs: added new libgda functions and some enumerations.
164
165         * System.Data.OleDb/OleDbParameter.cs (IsNullable): removed explicit implementation
166         of the set method for this property.
167
168         * System.Data.OleDb/OleDbDataAdapter.cs (MissingMappingAction): implemented.
169         (MissingSchemaAction): implemented.
170
171 2002-07-10  Tim Coleman <tim@timcoleman.com>
172         
173         * System.Data.OleDb/OleDbCommandBuilder.cs: Added new methods, properties
174         * System.Data.OleDb/OleDbConnection.cs: Modified constructor
175         * System.Data.OleDb/OleDbError.cs: Added stubbs
176         * System.Data.OleDb/OleDbException.cs: Added stubbs
177         * System.Data.OleDb/OleDbInfoMessageEventArgs.cs: Added stubbs
178         * System.Data.OleDb/OleDbInfoMessageEventHandler.cs: style change
179         * System.Data.OleDb/OleDbParameter.cs: Added conversion from type to OleDbType
180         * System.Data.OleDb/OleDbPermission.cs: Added stubbs
181         * System.Data.OleDb/OleDbSchemaGuid.cs: Added stubbs
182         * System.Data.OleDb/OleDbTransaction.cs: New constructors, changes to methods to
183         support transaction nesting
184         * System.Data.OleDb/libgda.cs: Added my name to this file
185
186 2002-07-09  Tim Coleman <tim@timcoleman.com>
187         
188         * System.Data.OleDb/OleDbCommand.cs: Style changes, added new methods
189         * System.Data.OleDb/OleDbConnection.cs: Style changes, added new methods
190         * System.Data.OleDb/OleDbDataAdapter.cs: Implementation
191         * System.Data.OleDb/OleDbDataReader.cs: Added stubbs
192         * System.Data.OleDb/OleDbErrorCollection.cs: Added stubbs, some implementation
193         * System.Data.OleDb/OleDbParameter.cs: Style changes, added new methods
194         * System.Data.OleDb/OleDbParameterCollection.cs: Style changes, added new methods
195         * System.Data.OleDb/OleDbPermissionAttribute.cs: Style changes, added new methods
196         * System.Data.OleDb/OleDbRowUpdatedEventArgs.cs: Added stubbs
197         * System.Data.OleDb/OleDbRowUpdatingEventArgs.cs: Added stubbs
198         * System.Data.OleDb/OleDbTransaction.cs: Style changes, added new methods
199         * System.Data.OleDb/OleDbType.cs: Fixed two typos
200         * System.Data.OleDb/libgda.cs: Style changes, added new methods
201
202 2002-07-09  Tim Coleman <tim@timcoleman.com>
203         
204         * System.Data.build: remove restriction on System.Data.OleDb build
205
206 2002-06-03  Rodrigo Moya <rodrigo@ximian.com>
207
208         * System.Data.OleDb/OleDbParameterCollection.cs (GetEnumerator, SyncRoot,
209         IsSynchronized): implemented.
210
211 2002-06-02  Rodrigo Moya <rodrigo@ximian.com>
212
213         * System.Data.OleDb/OleDbTransaction.cs (Dispose): added missing method.
214
215         * System.Data.OleDb/OleDbCommand.cs (Clone): added missing methods.
216         (Parameters, Transaction, Connection): made these overload
217         IDbCommand's ones.
218
219         * System.Data.OleDb/OleDbParameterCollection.cs (IndexOf, Remove, RemoveAt):
220         call m_list methods, not own ones.
221
222         * System.Data.OleDb/OleDbParameter.cs: more implementation.
223         
224 2002-06-02  Rodrigo Moya <rodrigo@ximian.com>
225
226         * System.Data.OleDb/OleDbTransaction.cs (Connection, IsolationLevel, Begin,
227         Commit, Rollback): implemented.
228         (GdaConnection): added new internal property.
229
230         * System.Data.OleDb/OleDbParameter.cs:
231         * System.Data.OleDb/OleDbParameterCollection.cs: implemented some methods and
232         properties.
233
234         * System.Data.OleDb/libgda.cs: added yet more libgda API functions.
235
236 2002-06-01  Rodrigo Moya <rodrigo@ximian.com>
237
238         * System.Data.OleDb/libgda.cs: added new libgda API functions.
239
240         * System.Data.OleDb/OleDbConnection.cs (Provider): implemented.
241         (BeginTransaction): made it overload IDbConnection methods.
242         (ChangeDatabase): new stub, needs some work on libgda for being
243         implemented.
244         (Clone): new stub.
245         (Close): implemented.
246         (CreateCommand): implemented.
247         (GetOleDbSchemaTable): new stub, until I understand what to do here.
248         (Open): implemented basic stuff, which is just supporting connection
249         strings that represent a GDA data source name. More to come.
250         (InfoMessage, StateChange): added events.
251
252         * System.Data.OleDb/TestOleDb.cs: test program for System.Data.OleDb.
253
254 2002-05-29  Rodrigo Moya <rodrigo@ximian.com>
255
256         * System.Data.OleDb/libgda.cs: added static constructor.
257         (GdaClient): new static property to get the underlying GdaClient
258         object.
259
260         * System.Data.OleDb/OleDbConnection.cs: removed GDA initialization, which belongs to
261         the static 'libgda' class.
262
263 2002-05-29  Rodrigo Moya <rodrigo@ximian.com>
264
265         * System.Data.OleDb/libgda.cs: static class for libgda API calls.
266
267         * System.Data.OleDb/OleDbConnection.cs: implemented constructors.
268         (ConnectionString, Connectiontimeout, Database, State):
269         implemented class properties.
270         (BeginTransaction): implemented.
271
272         * System.Data.OleDb/OleDbTransaction.cs: implemented protected constructors.
273
274         * System.Data.OleDb/TestGDA.cs: simple test for libgda API.
275
276 2002-05-27  Rodrigo Moya <rodrigo@ximian.com>
277
278         * System.Data.OleDb/*: started System.Data.OleDb provider, based on libgda.
279
280 2002-06-06  Rodrigo Moya <rodrigo@ximian.com>
281
282         * list: added missing PostgresTypes.cs file.
283
284 2002-06-02  Francisco Jr. <fxjrlists@yahoo.com.br>
285
286         * System.Data.SqlClient/SqlParameterCollection.cs: implemented missing
287         methods.
288
289 2002-05-30  Daniel Morgan <danmorg@sc.rr.com>
290
291         * System.Data.SqlClient/SqlConnection.cs: modifed -
292         start to implement the interfaces properly and
293         properly doing a Close(), Dispose(), and 
294         releasing resources
295         
296         * Test/SqlSharpCli.cs: modified -
297         add support for MySQL in Mono.Data.MySql
298         and OleDb support in System.Data.OleDb.  However,
299         the OleDb support is commented right now.
300         When the program starts up, a shorter help menu should
301         display the most important commands: help and quit
302
303 2002-05-28  Rodrigo Moya <rodrigo@ximian.com>
304
305         * System.Data.build: exclude System.Data.OleDb files.
306
307 2002-05-27  Daniel Morgan <danmorg@sc.rr.com>
308
309         * System.Data.SqlClient/SqlCommand.cs: typo
310         should be CommandBehavior.KeyInfo
311         
312         * Test/SqlSharpCli.cs: refactored and added a few more
313         features.
314
315 2002-05-27  Tim Coleman <tim@timcoleman.com>
316         * list: update to compile properly (add missing
317         files and switch path delimiter from '\' to '/').
318
319 2002-05-26  Daniel Morgan <danmorg@sc.rr.com>
320
321         * System.Data/DataRow.cs
322         * System.Data.Common/DbDataAdapter.cs: fix to
323         get Test/TestSqlDataAdapter.cs to work again
324         
325         * Test/TestSqlDataAdapter.cs: removed comment
326         about SqlDataReader:NextResult() not being implemented; it
327         bas been implemented
328
329 2002-05-26  Daniel Morgan <danmorg@sc.rr.com>
330
331         * System.Data/DataRow.cs: modified
332         support setting of DBNull.Value
333         using the Item indexer this[DataColumn]
334         
335         * System.Data.SqlClient/SqlCommand.cs: modified
336         tweaks to show TODO's for other CommandBehavior.
337         Set AllowDBNull column to true for IsKey row 
338         in schema DataTable.
339         
340         * System.Data.SqlClient/SqlConnection.cs: modified
341         if transaction is in progress when a Close() is called,
342         do a transaction Rollback.
343
344 2002-05-26  Daniel Morgan <danmorg@sc.rr.com>
345
346         * Test/SqlSharpCli.cs: added file
347         My new toy.  SQL# is a command-line tool to enter
348         SQL     commands and queries using Mono System.Data.
349         It also serves as a test for Mono System.Data.
350         
351         * System.Data.SqlClient/SqlCommand.cs: modified
352         - ExecuteNonQuery(), ExecuteScalar(), and ExecuteReader()
353         should handle the results from SQL Commands and Queries.
354         - Internal class SqlResult should not create schema Table
355         for the result from a SQL Command.  Also, set the RecordsRetrieved
356         property for SqlDataReader.
357         - Closing the SqlDataReader should Close() the SqlConnection for
358         a CommandBehavior.CloseConnection.
359         - Set defaults for SqlResult
360         
361         * System.Data.SqlClient/SqlConnection.cs: modified - 
362         when SqlDataReader is Close()
363         should Close() the SqlConnection for
364         a CommandBehavior.CloseConnection.  Changed internal Property
365         from OpenReader get/set to IsReaderOpen get and created
366         internal methods OpenReader()/CloseReader() for SqlCommand to call.
367         SqlConnection needs to be prevented from doing while SqlDataReader
368         is being used.
369         
370         * System.Data.SqlClient/SqlDataReader.cs: modified -
371         call SqlCommand's OpenReader() internal method.  get
372         RecordsRetrieved from SqlResult.  set/reset default
373         values for SqlDataReader.
374         
375         * Test/PostgresTest.cs
376         * Test/TestExecuteScalar.cs
377         * Test/TestSqlDataReader.cs: modified
378         for the Execute...() methods in SqlCommand
379         to test SQL Queries and Commands
380         
381         * Test/System.Data_test.build: modified
382         exclude new file Test/SqlSharpCli.cs from 
383         test build
384         
385 2002-05-24  Tim Coleman <tim@timcoleman.com>
386         * System.Data.Common/DbDataAdapter.cs: remove IDbCommands, except
387         for get accessors.  These should be implemented in derived classes.  See
388         SqlDataAdapter for clues.
389         * System.Data.SqlClient/SqlDataAdapter.cs: implement IDbDataAdapter
390         * System.Data.Common/DataAdapter.cs:
391         * System.Data.Common/DataTableMappingCollection.cs:
392         * System.Data.Common/DataTableMapping.cs:
393         * System.Data.Common/DataColumnMappingCollection.cs:
394         * System.Data.Common/DataColumnMapping.cs:
395         Properly (I hope!) implement all of the appropriate interfaces
396         for these classes.  
397
398
399 2002-05-23  Tim Coleman <tim@timcoleman.com>
400         * System.Data.SqlClient/SqlCommand.cs: include
401         the BaseColumnName in the schema table.  Was missed before.
402         * System.Data.Common/DbDataAdapter.cs: Use DataTable
403         mappings so that the DataSet and DataTable are more closely tied.
404         Get schema information from the DataTable using GetSchemaTable ()
405         Various other little fixes
406         * System.Data.Common/DataColumnMappingCollection.cs:
407         * System.Data.Common/DataTableMapping.cs:
408         * System.Data.Common/DataTableMappingCollection.cs: Some
409         implementation, enough to be used by DbDataAdapter.
410
411 2002-05-23  Daniel Morgan <danmorg@sc.rr.com>
412
413         * System.Data.SqlClient/SqlCommand.cs: set
414         the "ProviderType" to the PostgreSQL type oid
415         
416         * System.Data.SqlClient/SqlDataReader.cs: fix
417         for various properties and methods that 
418         return meta data: Item indexers this[name] and this[index],
419         GetFieldType, GetName, and GetOrdinal.  SqlDataAdapter
420         should work again.
421
422 2002-05-22  Daniel Morgan <danmorg@sc.rr.com>
423
424         * System.Data/DataRow.cs: change suggested
425         by tim: in Item indexer, do an EndEdit()
426         
427         * System.Data.SqlClient/SqlCommand.cs: more
428         fixes to SqlResult.  After setting each item in
429         the DataRow, do an AcceptChanges() to commit
430         the changes in the DataRow.  For DataType, use a Type
431         of System.String since System.Type nor System.Object
432         seems to work.
433         
434         * Test/TestSqlDataReader.cs
435         * Test/PostgresTest.cs: updated to to be on
436         the way schema table is suppose to work
437
438 2002-05-22  Daniel Morgan <danmorg@sc.rr.com>
439
440         * System.Data.SqlClient/SqlCommand.cs: more work on 
441         building the schema table
442
443 2002-05-22  Tim Coleman <tim@timcoleman.com>
444         * System.Data.SqlClient/SqlCommand.cs: preliminary work
445         on getting the schema table correctly built.
446
447 2002-05-21  Daniel Morgan <danmorg@sc.rr.com>
448
449         * System.Data.SqlClient/ParmUtil.cs: added file - to
450         provide utility for conversion of input parameters
451         
452         * System.Data.SqlClient/PostgresTypes.cs: added file - 
453         moved the PostgreHelper class to here.  May eventually
454         move the internal class PostgresTypes that's inside the 
455         SqlConnection to here as well.  
456         Handling of PostgreSQL <-> .NET types need to be though
457         out more. Also, the PostgreHelper has a method to convert
458         from .NET types to a string which can be put into used in
459         an SQL statement to execute against a PostgreSQL database.
460         This is the beginnings of parameters support.  It currently
461         only supports input parameters.  Still need to do output,
462         input/output, and return parameters.
463         
464         * Test/TestSqlParameters.cs: new test to test the input
465         parameters in System.Data.SqlClient against a 
466         PostgreSQL db.
467         
468         * System.Data.SqlClient/PostgresLibrary.cs: moved 
469         PostgresHelper class to file PostgresTypes.cs.  Also 
470         moved struct PostgresType there too.
471         
472         * System.Data.SqlClient/SqlCommand.cs: added input 
473         parameters support
474         
475         * System.Data.SqlClient/SqlParameter.cs: got 
476         SqlParameter to work
477         
478         * System.Data.SqlClient/SqlParameterCollection.cs: got 
479         SqlParameterCollection to work
480         
481         * Test/System.Data_test.build: added files to exclude 
482         from test build
483         
484         * System.Data.SqlClient/SqlConnection.cs: release resources
485         no longer used
486
487 2002-05-18  Daniel Morgan <danmorg@sc.rr.com>
488
489         * System.Xml: added directory for classes with namespace
490         System.Xml to go into the System.Data.dll assembly
491         
492         * System.Xml/XmlDataDocument: added file
493         for stubbed concrete class XmlDataDocument which 
494         inherits from XmlDocument.  Its purpose is to provide
495         a W3C XML DOM Document for relational data and interacting
496         with a DataSet
497
498 2002-05-18  Daniel Morgan <danmorg@sc.rr.com>
499
500         * System.Data.SqlClient/SqlCommand.cs: handle CommandTypes
501         Text, TableDirect, and StoredProcedure
502         
503         * Test/PostgresTest.cs: changed call to version() 
504         stored procedure to use the CommandType of StoredProcedure
505         
506         * Test/TestSqlDataReader.cs: test all the CommandTypes
507
508 2002-05-18  Daniel Morgan <danmorg@sc.rr.com>
509
510         * System.Data.build: took out all excluded
511         files except the ones in the Test directory
512         because all files compile now.  It does not
513         mean they all work or have implementations
514         though.
515         
516         * System.Data/DataRelationCollection.cs
517         * System.Data/DataTableRelationCollection.cs
518         * System.Data/InternalDataCollectionBase.cs
519         * System.Data.Common/DbDataPermission.cs
520         * System.Data.SqlClient/SqlInfoMessageEventArgs.cs
521         * System.Data.SqlClient/SqlClientPermission.cs
522         * System.Data.SqlClient/SqlClientPermissionAttribute.cs: changes
523         to get all System.Data* files to compile.
524         
525         * System.Data.SqlClient/SqlCommand.cs: started coding
526         to prevent SqlConnection and SqlCommand from doing
527         anyting while fetching data using SqlDataReader.  Also,
528         started coding to undo this prevention once the 
529         SqlDataReader is closed.
530         
531         * System.Data.SqlClient/SqlConnection.cs: get database server
532         version.  Started coding to prevent connection from 
533         doing anything while fetching data and undo once the reader 
534         is closed.  Include events SqlInfoMessage and StateChange.
535         
536         * System.Data.SqlClient/SqlDataReader.cs: start coding to
537         prevent connection and command from doing anything while
538         fetching data, and undo when closed.
539         
540         * Test/PostgresTest.cs: added test to get ServerVersion
541         property from SqlConnection
542
543 2002-05-18  Tim Coleman <tim@timcoleman.com>
544         * System.Data/DataRow.cs: More implementation,
545         as well as boundary checks and small semantic
546         repairs
547
548 2002-05-18  Tim Coleman <tim@timcoleman.com>
549         * System.Data/DataRow.cs: Try to reduce memory
550         usage by only creating the original and proposed
551         arrays as required in BeginEdit, and then destroying
552         proposed during EndEdit, and original during AcceptChanges.
553         * System.Data.Common/DbDataAdapter.cs: Make the
554         startRecord and maxRecords parameters work correctly.
555
556 2002-05-18  Tim Coleman <tim@timcoleman.com>
557         * System.Data/DataRow.cs: Move the null check in
558         ItemArray set to above the Invalid Cast check, so
559         that we don't get null reference exceptions.
560
561 2002-05-17  Daniel Morgan <danmorg@sc.rr.com>
562
563         * System.Data.SqlClient/PostgresLibrary.cs: handle
564         data value from database being NULL
565         
566         * System.Data.SqlClient/SqlCommand.cs: for ExecuteReader, 
567         allow multiple result sets.  Added new internal class
568         SqlResult to pass result set data from SqlCommand
569         to SqlDataReader.
570         
571         * System.Data.SqlClient/SqlDataReader.cs: allow
572         multiple result sets.
573         
574         * System.Data.SqlClient/SqlConnection.cs: moved 
575         things around.  Implement IDisposable.
576         
577         * Test/TestSqlDataReader.cs: test for execution
578         of multiple result sets and display the results
579         of these multiple results sets
580         
581         * Test/TestSqlDataAdapter.cs: tweaks
582
583 2002-05-17  Tim Coleman <tim@timcoleman.com>
584         * System.Data.Common/DbDataAdapter.cs:
585                 - More implementation of Fill methods
586                 - Get rid of isDirty flag, because we can just check
587                         if the table exists
588                 - Do *not* remove DataTables before Filling them
589                 - Implicitly open the connection before doing a Fill
590                         if it does not exist.
591         * System.Data.SqlClient/SqlDataAdapter.cs:
592                 - Minor fixup
593         * System.Data/DataTableCollection.cs:
594                 - Add DataSet to internal, undocumented constructor
595                 - When a table is created, set its DataSet property
596                 - Default table name for creation is "Table1" (see .NET)
597                 - Inherit the ArrayList list from InternalDataCollecitonBase
598                         and maintain a hashtable between table names and
599                         DataTables
600         * System.Data/DataTable.cs:
601                 - Add internal dataSet field.  This is used by 
602                         DataTableCollection when the DataTable is constructed.
603         * System.Data/DataSet.cs:
604                 - Pass a reference to the DataSet when constructing the
605                         DataTableCollection.
606
607 2002-05-16  Tim Coleman <tim@timcoleman.com>
608         * System.Data.Common/DbDataAdapter.cs:
609                 Use table.Rows.Add (itemArray) instead of
610                 table.Rows.Add (thisRow) to provide better
611                 abstraction.
612         * System.Data/DataRowCollection.cs:
613                 Some implementation of this class.
614         * System.Data/InternalDataCollectionBase.cs:
615                 Some implementation.  Most notably, this now
616                 has an enumerator so we can use foreach (DataRow row in table.Rows)
617                 in the test classes.
618         * System.Data/DataTable.cs:
619                 Since DataRowCollection now accepts a DataTable in
620                 its internal constructor, we must pass one in.
621
622 2002-05-16  Daniel Morgan <danmorg@sc.rr.com>
623
624         * Test/TestSqlDataAdapter.cs: added new test 
625         for SqlDataAdapter, DataSet, DataTableCollection, DataTable, 
626         DataRowCollection, and DataRow.  It tests retrieving data
627         based on a SQL SELECT query.  This test is based on Tim Coleman's
628         test he sent to me.
629
630 2002-05-16  Tim Coleman <tim@timcoleman.com>
631         * System.Data.Common/DbDataAdapter.cs:
632                 Use table.Rows.Add (thisRow) instead of 
633                 table.ImportRow (thisRow)
634         * System.Data/DataRowCollection.cs:
635                 Construct the ArrayList before using it
636
637 2002-05-16  Tim Coleman <tim@timcoleman.com>
638         * System.Data/DataTable.cs:
639                 Construct the DataRowCollection in the DataTable
640                 constructor.  Otherwise, it's a null reference.
641
642 2002-05-16  Tim Coleman <tim@timcoleman.com>
643         * System.Data.SqlClient/SqlDataReader.cs:
644                 Modify GetValues to use Array.Copy() to copy
645                 the results from fields to values, rather than
646                 an assignment, which results in loss of data.
647
648 2002-05-16  Tim Coleman <tim@timcoleman.com>
649         * System.Data/DataRow.cs:
650                 More implementation and documentation.  It should
651                 work more like expected, although there is no way
652                 to demonstrate this well yet.  DataTable requires
653                 more work.
654
655 2002-05-15  Tim Coleman <tim@timcoleman.com>
656         * System.Data/DataRow.cs:
657                         Minor tweaks as I determine exactly how to
658                                         implement this class.
659
660
661 2002-05-14  Duncan Mak  <duncan@ximian.com>
662
663         * System.Data/DataTable.cs (NewRow): Added missing paren to fix build.
664
665 2002-05-14  Tim Coleman
666         * System.Data/DataRow.cs:
667         * System.Data/DataRowBuilder.cs:
668         * System.Data/DataTable.cs:
669                 More implementation of these classes.  DataRow
670                 can now (possibly) do some useful things.
671                 Still not sure what DataRowBuilder is all about,
672                 other than passing a DataTable in.
673
674 2002-05-14  Tim Coleman
675         * System.Data/DataRowBuilder.cs:
676                 Add stubb for this internal class.
677
678 2002-05-13  Tim Coleman
679         * System.Data.Common/DbDataAdapter.cs:
680                 The maxRecords check was not correct.
681
682 2002-05-13  Tim Coleman
683         * System.Data/DataTableCollection.cs:
684                 Fix an issue when adding a DataTable and size == 0.
685                 Now explicitly checks if size > 0 before doing Array.Copy ()
686         * System.Data.Common/DbDataAdapter.cs:
687                 Move closer to a working implementation.
688                 Make the IDbCommand fields protected so that they can
689                 be inherited.
690         * System.Data.SqlClient/SqlDataAdapter.cs:
691                 This should inherit the IDbCommands instead of having its
692                 own.  An explicit cast is used to force conversion between
693                 IDbCommand and SqlCommand
694
695 2002-05-13  Tim Coleman
696         * System.Data.Common/DataTableMappingCollection.cs:
697                 Some implementation to allow progress with DbDataAdapter
698
699 2002-05-13  Tim Coleman
700         * System.Data.Common/DbDataAdapter.cs:
701                 Modify to not break compile.
702
703 2002-05-13  Tim Coleman
704         * System.Data.build:
705                 include SqlDataAdapter, SqlRowUpdatedEventArgs,
706                 SqlRowUpdatingEventArgs, SqlRowUpdatedEventHandler,
707                 SqlRowUpdatingEventHandler in the build.
708
709 2002-05-13  Tim Coleman
710         * System.Data.Common/DbDataAdapter.cs:
711                 More implementation.
712         * System.Data.Common/DataAdapter.cs:
713                 Correction of some of the stubbing, as well as a
714                 little bit more implementation
715
716 2002-05-11  Tim Coleman
717         * System.Data.SqlClient/SqlDataAdapter.cs:
718         * System.Data.Common/DbDataAdapter.cs:
719                 Moved methods that weren't supposed to 
720                 be in SqlDataAdapter out.  They should be implemented
721                 in DbDataAdapter.
722         
723
724 2002-05-11  Tim Coleman
725         * System.Data.SqlClient/SqlDataAdapter.cs:
726                 some implementation of this class.  Note
727                 that none of the functionality has been
728                 tested yet, but I felt it should be checked
729                 in at this point as it compiles.
730         * System.Data.SqlClient/SqlRowUpdatingEventArgs.cs:
731         * System.Data.SqlClient/SqlRowUpdatedEventArgs.cs:
732                 Modified so that they will compile properly.
733                 Needed to include SqlDataAdapter in the build.
734
735 2002-05-11  Rodrigo Moya <rodrigo@ximian.com>
736
737         * System.Data/DataTable.cs (Clear): implemented.
738         (DataTable): removed repeated code in constructors, and call the
739         basic constructor from the others.
740
741         * System.Data/DataColumn.cs: some tweaks.
742
743         * System.Data/DataRow.cs (RowState): implemented.
744         (CancelEdit): set rowState property back to Unchanged.
745         (RejectChanges): call CancelEdit.
746         (Delete): set rowState to Deleted.
747
748 2002-05-11  Daniel Morgan <danmorg@sc.rr.com>
749
750         * System.Data.build: added copy of System.Data.dll to Test directory
751         for easy testing.  Also, added clean for it too.
752         
753         * System.Data.SqlClient/PostgresLibrary.cs: changed setting of boolean
754         from PostgreSQL data type to .NET type.
755         
756         * System.Data.SqlClient/SqlDataReader.cs: beginnings
757         handling of a NULL value from the database
758         
759         * Test/PostgresTest.cs: added tests for NULL values retrieved
760         from the database
761         
762         * Test/ReadPostgresData.cs
763         * Test/TestExecuteScalar.cs
764         * Test/TestSqlDataReader.cs
765         * Test/TestSqlException.cs
766         * Test/TestSqlIsolationLevel.cs: updated tests to use databas user
767         "postgres".  These tests may eventually be removed since they
768         are not flexible.
769
770 2002-05-10  Rodrigo Moya <rodrigo@ximian.com>
771
772         * System.Data.build: removed reference to non-existant
773         TestDataColumn.cs file.
774
775         * System.Data/DataSet.cs: added some implementation.
776
777 2002-05-09  Daniel Morgan <danmorg@sc.rr.com>
778
779         * System.Data.SqlClient/PostgresLibrary.cs: got
780         PostgreSQL data types time, date, timestamp (DateTime like)
781         mapped to .NET System.DateTime working based 
782         on ISO DateTime formatting "YYYY-MM-DD hh:mi:ss.ms"
783         Also mapped pg type boolean to .net Boolean
784         
785         * SqlClient/SqlConnection.cs: run SQL command to set
786         Date style to ISO
787         
788         * Test/PostgresTest.cs: added test for an UPDATE SQL command,
789         added tests for aggregates min(), max(), sum(), count().  could
790         not get avg() to work due to some formatting error; someone claimed
791         that it was my locale settings.  added tests for SELECT of columns
792         of type boolean, float, double, date, time, and timestamp.  They
793         have not been fully tested, but its a start.
794
795 2002-05-09  Tim Coleman <tim@timcoleman.com>
796         * System.Data.SqlTypes/SqlDecimal.cs: Implementations of 
797         addition, subtraction, and multiplication for the
798         SqlDecimal type, as well as modification of some other
799         operations.  More to come on this one.
800
801 2002-05-08  Rodrigo Moya <rodrigo@ximian.com>
802
803         * Test/System.Data_test.build: excluded TestDataColumn, which
804         should be replaced with a nunit test.
805
806         * Test/TestDataColumn.cs: added basic test for DataColumn.cs.
807
808 2002-05-07  Tim Coleman <tim@timcoleman.com>
809         * SqlBinary.cs:
810         * SqlBoolean.cs:
811         * SqlByte.cs:
812         * SqlDateTime.cs:
813         * SqlDecimal.cs:
814         * SqlDouble.cs:
815         * SqlGuid.cs:
816         * SqlInt16.cs:
817         * SqlInt32.cs:
818         * SqlInt64.cs:
819         * SqlMoney.cs:
820         * SqlSingle.cs:
821         * SqlString.cs:
822                 Fix the broken build I made before.  Bad
823                 me.
824
825 2002-05-07  Tim Coleman <tim@timcoleman.com>
826         * SqlString.cs:
827                 Fix a symantic error I made in SqlString
828                 Equals where I copied and pasted wrongly
829
830 2002-05-07  Tim Coleman <tim@timcoleman.com>
831         * INullable.cs:
832         * SqlBinary.cs:
833         * SqlBoolean.cs:
834         * SqlByte.cs:
835         * SqlCompareOptions.cs:
836         * SqlDateTime.cs:
837         * SqlDecimal.cs:
838         * SqlDouble.cs:
839         * SqlGuid.cs:
840         * SqlInt16.cs:
841         * SqlInt32.cs:
842         * SqlInt64.cs:
843         * SqlMoney.cs:
844         * SqlSingle.cs:
845         * SqlString.cs:
846                 Implement CompareTo, Equals, and String conversions 
847                 for many types
848
849 2002-05-05  Daniel Morgan <danmorg@sc.rr.com>
850
851         * Test/PostgresTest.cs: modified to run completely.  There
852         are many TODOs in System.Data, so not all data types are
853         included in the SELECT SQL query.  Also, I made it to where
854         it would connect 
855         using "host=localhost;dbname=test;user=postgres"
856         instead of my userid and password.  When more types are included,
857         update this test.
858
859 2002-05-05  Daniel Morgan <danmorg@sc.rr.com>
860
861         * Test/PostgresTest.cs: added - ported
862         libgda postgres-test.c originally by 
863         Gonzalo Paniagua Javier <gonzalo@gnome-db.org>
864         to C#.
865
866 2002-05-05  Tim Coleman <tim@timcoleman.com>
867         * System.Data.SqlTypes/SqlBinary.cs:
868         * System.Data.SqlTypes/SqlBoolean.cs:
869         * System.Data.SqlTypes/SqlByte.cs:
870         * System.Data.SqlTypes/SqlDateTime.cs:
871         * System.Data.SqlTypes/SqlDecimal.cs:
872         * System.Data.SqlTypes/SqlDouble.cs:
873         * System.Data.SqlTypes/SqlGuid.cs:
874         * System.Data.SqlTypes/SqlInt16.cs:
875         * System.Data.SqlTypes/SqlInt32.cs:
876         * System.Data.SqlTypes/SqlInt64.cs:
877         * System.Data.SqlTypes/SqlMoney.cs:
878         * System.Data.SqlTypes/SqlSingle.cs:
879         * System.Data.SqlTypes/SqlString.cs:
880                 More implementation, and code clean-up for consistency.
881                 Also, I had implemented many conversions as explicit
882                 that should have been implicit.  This should remove
883                 many of the red X's and green pluses from the 
884                 System.Data.SqlTypes namespace.
885
886 2002-05-05  Miguel de Icaza  <miguel@ximian.com>
887
888         * System.Data/DataSet.cs: Remove [Serializable] attributes from
889         methods, those only apply to structs or classes.
890
891         Stub out ISerializable, ISupportInitialize, and IListSource methods 
892         
893         * System.Data/DataRowView.cs: Stub out interface methods for
894         IEditableObject, ICustomTypeDescriptor and IDataErrorInfo
895
896         * System.Data/DataView.cs: Comment out non-implemented
897         interfaces. 
898
899         * System.Data/DataViewSettingsCollection.cs: Type cast variables
900         to the correct type to make it compile.
901
902         * System.Data/DataViewSettings.cs: remove reference to
903         non-existance type ApplyDefaultSort, it is a boolean.
904         
905
906 2002-05-05  Tim Coleman <tim@timcoleman.com>
907         * System.Data.SqlTypes/SqlBinary.cs:
908         * System.Data.SqlTypes/SqlBoolean.cs:
909         * System.Data.SqlTypes/SqlByte.cs:
910         * System.Data.SqlTypes/SqlDecimal.cs:
911         * System.Data.SqlTypes/SqlDouble.cs:
912         * System.Data.SqlTypes/SqlGuid.cs:
913         * System.Data.SqlTypes/SqlInt16.cs:
914         * System.Data.SqlTypes/SqlInt32.cs:
915         * System.Data.SqlTypes/SqlInt64.cs:
916         * System.Data.SqlTypes/SqlMoney.cs:
917         * System.Data.SqlTypes/SqlSingle.cs:
918         * System.Data.SqlTypes/SqlString.cs:
919                 Various fixes, including adding the SqlNullValueException
920                 when trying to retrieve the value of a null SqlType,
921                 and when casting values, a Null of type A converts to a
922                 Null of type B.
923
924 2002-05-04  Daniel Morgan <danmorg@sc.rr.com>
925         
926         * System.Data.SqlClient/PostgresLibrary.cs
927         * System.Data.SqlClient/SqlCommand.cs
928         * System.Data.SqlClient/SqlConnection.cs
929         * System.Data.SqlClient/SqlDataReader.cs
930         oid should not be hard coded because they
931         can change from one version of PostgreSQL
932         to the next.  Use the typname's instead.
933         The PostgreSQL type data retrieves
934         at database connection time.  Any unimplemented
935         types just default to string.  These were things
936         suggested by Gonzalo.
937         
938         * Test/ReadPostgresData.cs - stuff
939         * Test/TestSqlDataReader.cs - stuff
940         
941         * System.Data.SqlTypes/SqlInt32.cs - added a using
942
943 2002-05-03  Tim Coleman <tim@timcoleman.com>
944         * System.Data.build: Fix the build so that test depends on build
945
946 2002-05-03  Tim Coleman <tim@timcoleman.com>
947         * System.Data.SqlTypes/SqlByte.cs:
948         * System.Data.SqlTypes/SqlDateTime.cs:
949         * System.Data.SqlTypes/SqlDecimal.cs:
950         * System.Data.SqlTypes/SqlDouble.cs:
951         * System.Data.SqlTypes/SqlGuid.cs:
952         * System.Data.SqlTypes/SqlInt16.cs:
953         * System.Data.SqlTypes/SqlInt64.cs:
954         * System.Data.SqlTypes/SqlMoney.cs:
955         * System.Data.SqlTypes/SqlSingle.cs:
956                 These files were mysteriously excluded from the last
957                 patch I made and sent to Rodrigo
958         * System.Data.build: include the System.Data.SqlTypes in the build
959
960 2002-05-03  Daniel Morgan <danmorg@sc.rr.com>
961
962         * System.Data.build: removed comments
963
964         * System.Data.SqlClient/PostgresLibrary.cs: changed
965         the hard-coded PostgreSQL oid type int's to using an
966         enum.  Also, added PostgreSQL bpchar (character) type.
967         
968         * Test/TestSqlDataReader.cs: updated test
969         to include new bpchar PostgreSQL type
970
971 2002-05-03  Rodrigo Moya <rodrigo@ximian.com>
972
973         * System.Data.SqlTypes/SqlBinary.cs:
974         * System.Data.SqlTypes/SqlBoolean.cs:
975         * System.Data.SqlTypes/SqlInt32.cs:
976         * System.Data.SqlTypes/SqlString.cs: more implementation, by
977         Tim Coleman <tcoleman@opentext.com>.
978
979 2002-05-03  Daniel Morgan <danmorg@sc.rr.com>
980
981         * Test/TestExecuteScalar.cs: added test for 
982         method ExecuteScalar in class SqlCommand.
983         
984         * System.Data/DataColumnCollection.cs - it should
985         inherit properties from base InternalDataCollectionBase
986         and use them instead of overriding them, such as, List.
987         
988         * System.Data/DataColumn.cs
989         * System.Data/DataTable.cs: tweaks to retrieve
990         meta data from the database
991         
992         * System.Data.SqlClient/PostgresLibrary.cs -
993         added method OidToType to convert PostgreSQL oid type 
994         to System.Type.  Renamed method OidTypeToSystem
995         to ConvertPgTypeToSystem for converting the data value
996         from a PostgreSQL type to a .NET System type.
997         
998         * System.Data.SqlClient/SqlCommand.cs: implemented
999         method ExecuteReader which returns a SqlDataReader
1000         for a light forward only read only result set. 
1001         It works on types int4 ==> Int32 and 
1002         varchar ==> String.  Other types
1003         will come later.
1004         
1005         * System.Data.SqlClient/SqlConnection.cs: added comment
1006         
1007         * System.Data.SqlClient/SqlDataReader.cs: implemented
1008         class.  It works, but still lots to do.
1009         
1010         * Test/ReadPostgresData.cs: stuff
1011         
1012         * Test/TestSqlDataReader.cs: updated test for SqlDataReader
1013         to display meta data and the data
1014         
1015 2002-05-03  Duncan Mak  <duncan@ximian.com>
1016
1017         * TODO: Took out all the Exceptions. They should be all done now.
1018
1019         * System.Data/ConstraintException.cs: 
1020         * System.Data/DBConcurrencyException.cs:
1021         * System.Data/DataException.cs: 
1022         * System.Data/DeletedRowInaccessibleException.cs: 
1023         * System.Data/DuplicateNameException.cs:
1024         * System.Data/EvaluateException.cs: 
1025         * System.Data/InRowChangingEventException.cs: 
1026         * System.Data/InvalidConstraintException.cs: 
1027         * System.Data/InvalidExpressionException.cs: 
1028         * System.Data/MissingPrimaryKeyException.cs:
1029         * System.Data/NoNullAllowedException.cs: 
1030         * System.Data/ReadOnlyException.cs: 
1031         * System.Data/RowNotInTableException.cs: 
1032         * System.Data/StrongTypingException.cs:
1033         * System.Data/SyntaxErrorException.cs: 
1034         * System.Data/TypeDataSetGeneratorException.cs: 
1035         * System.Data/VersionNotFoundException.cs: Added to CVS.
1036
1037         * System.Data.SqlTypes/SqlNullValueException.cs: 
1038         * System.Data.SqlTypes/SqlTruncateException.cs: 
1039         * System.Data.SqlTypes/SqlTypeException.cs: Added to CVS.
1040
1041 2002-05-02  Rodrigo Moya <rodrigo@ximian.com>
1042
1043         * System.Data/DataViewSettingCollection.cs: implemented.
1044
1045         * System.Data/DataRowView.cs: new stubs.
1046
1047         * System.Data.SqlTypes/SqlByte.cs:
1048         * System.Data.SqlTypes/SqlDateTime.cs:
1049         * System.Data.SqlTypes/SqlDecimal.cs:
1050         * System.Data.SqlTypes/SqlDouble.cs:
1051         * System.Data.SqlTypes/SqlGuid.cs:
1052         * System.Data.SqlTypes/SqlInt16.cs:
1053         * System.Data.SqlTypes/SqlInt64.cs:
1054         * System.Data.SqlTypes/SqlMoney.cs:
1055         * System.Data.SqlTypes/SqlSingle.cs: new stubs, contributed
1056         by Tim Coleman <tcoleman@opentext.com>
1057
1058         * System.Data.build: excluded newly-added files.
1059
1060 2002-05-02  Daniel Morgan <danmorg@sc.rr.com>
1061
1062         * System.Data.SqlClient/PostgresLibrary.cs: included new 
1063         internal class that will be a helper class in using
1064         PostgreSQL.  PostgresLibrary is used for the 
1065         pinvoke methods to the PostgreSQL Client
1066         native C library libpq while the class PostgresHelper 
1067         is used for     wrapper or helper methods.  It currently only
1068         has one static method OidTypeToSystem in converting
1069         PostgreSQL types to .NET System.<type>s, such as,
1070         a PostgreSQL int8 becomes a .NET System.Int64.
1071         Only a few types have been added, such as, int2,
1072         int4, int8, varchar, text, bool, and char.  Other types
1073         will come later.
1074         
1075         * System.Data.SqlClient/SqlCommand.cs: implemented
1076         method ExecuteScalar which allows us to do aggregate
1077         functions, such as, count, avg, min, max, and sum.  We
1078         also are able to retrieve the result, convert it to the .NET type
1079         as an object.  The user of the returned object must explicitly cast.
1080         
1081         * Test/ReadPostgresData.cs: updated sample
1082         to help us learn to retrieve data in System.Data.SqlClient
1083         classes
1084
1085 2002-05-01  Daniel Morgan <danmorg@sc.rr.com>
1086
1087         * System.Data.build: added /nowarn: nnnn arguments 
1088         so you will not get a ton of warnings.  The warnings
1089         being excluded are: 1595, 0067, 0109, 0169, and 0649
1090
1091 2002-05-01  Daniel Morgan <danmorg@sc.rr.com>
1092
1093         * System.Data.build: modified to exclude more 
1094         files from the build
1095
1096 2002-05-01  Rodrigo Moya <rodrigo@ximian.com>
1097
1098         * System.Data.SqlClient/SqlClientPermission.cs: added missing
1099         'using's.
1100
1101         * System.Data/MergeFailedEventArgs.cs: new class, contributed
1102         by John Dugaw <jdugaw@unizenconsulting.com>.
1103
1104         * System.Data.build: excluded new files from build.
1105
1106 2002-04-29  Daniel Morgan <danmorg@sc.rr.com>
1107
1108         * Test/ReadPostgresData.cs: added - Uses the 
1109         PostgresLibrary to retrieve a recordset.
1110         This is not meant to be used in Production, but as a
1111         learning aid in coding 
1112         class System.Data.SqlClient.SqlDataReader.
1113         This sample does work.
1114         
1115         * Test/TestSqlDataReader.cs: added - used
1116         to test SqlDataReader (does not work yet)
1117         Forgot to add to ChangeLog on last commit.
1118
1119 2002-04-28  Rodrigo Moya <rodrigo@ximian.com>
1120
1121         * System.Data/DataViewSetting.cs: new class.
1122         
1123 2002-04-28  Rodrigo Moya <rodrigo@ximian.com>
1124
1125         * System.Data/DataViewManager.cs: new class.
1126         
1127         * System.Data.SqlTypes/INullable.cs: properties for interfaces
1128         don't have implementation.
1129
1130         * System.Data.SqlTypes/SqlInt32.cs:
1131         * System.Data.SqlTypes/SqlString.cs:
1132         * System.Data.SqlTypes/SqlBoolean.cs: removed destructor, since
1133         these are strctures.
1134
1135         * System.Data.SqlClient/SqlClientPermissionAttribute.cs: added
1136         missing 'using's.
1137         
1138 2002-04-28  Rodrigo Moya <rodrigo@ximian.com>
1139         
1140         * System.Data/DataTableRelationCollection.cs: use 'new' keyword
1141         for correctly hiding parent class' members.
1142         (AddRange): use 'override' keyword on overriden method.
1143         (Clear): likewise.
1144         (Contains): likewise.
1145         (IndexOf): likewise.
1146         (OnCollectionChanged): likewise.
1147         (OnCollectionChanging): likewise.
1148         (RemoveCore): likewise.
1149
1150         * System.Data/DataColumnCollection.cs: use 'new' keyword.
1151
1152         * System.Data/DataSet.cs: added missing 'using's.
1153         
1154 2002-04-28  Rodrigo Moya <rodrigo@ximian.com>
1155
1156         * System.Data/DataSet.cs:
1157         * System.Data/DataTableCollection.cs:
1158         * System.Data/DataView.cs: compilation fixes on Linux.
1159
1160 2002-04-28  Daniel Morgan <danmorg@sc.rr.com>
1161
1162         * System.Data/DataRelation.cs
1163         * System.Data/ForeignKeyConstraint.cs
1164         * System.Data/UniqueConstraint.cs: added more stubs
1165         
1166         * System.Data/DataTableRelationCollection.cs: added back to cvs
1167         and modified for compile errors.  DataRelationCollection is an
1168         abstract class and there must be a class that implements for
1169         DataTable/DataSet.  DataTableRelationCollection was changed
1170         to an internal class.
1171         
1172         * System.Data.build: modified - new files added
1173         also wanted to include files/classes in the build 
1174         so we can get a compilable forward read only result set.
1175         It compiles now using csc/nant with warnings, but this 
1176         is a start for adding functionality for the result set.  
1177         Classes associated with/and DataSet are still excluded.
1178         
1179         * TODO: modified - updated to do list for System.Data
1180         
1181         * System.Data/Constraint.cs
1182         * System.Data/ConstraintCollection.cs
1183         * System.Data/DataRelationCollection.cs
1184         * System.Data/DataRow.cs
1185         * System.Data/DataRowChangeEventArgs.cs
1186         * System.Data/DataRowCollection.cs
1187         * System.Data/DataTable.cs
1188         * System.Data/DataTableCollection.cs
1189         * System.Data/InternalDataCollectionBase.cs
1190         * System.Data/PropertyCollection.cs: modified -
1191         changes to compile SqlDataReader/DataTable and
1192         dependencies
1193         
1194         * System.Data/IDbCommand.cs
1195         * System.Data.SqlClient/SqlCommand.cs: modified -
1196         un-commented overloaded methods ExecuteReader 
1197         which returns a SqlDataReader
1198
1199 2002-04-28  Rodrigo Moya <rodrigo@ximian.com>
1200
1201         * System.Data/DataTableCollection.cs: more implementation.
1202         (Count): added 'override' keyword, as pointer out by Martin.
1203
1204         * System.Data.Common/DataColumnMappingCollection.cs (Add, AddRange):
1205         only call Array.Copy when there is really stuff to be copied.
1206         (CopyTo): don't create the temporary array, it's not needed.
1207
1208         * System.Data.build: excluded newly added file from build.
1209
1210 2002-04-27  Rodrigo Moya <rodrigo@ximian.com>
1211
1212         * System.Data/DataTableRelationCollection.cs: removed, it's not
1213         on MS SDK documentation.
1214
1215         * System.Data/DataTableCollection.cs: new class.
1216
1217 2002-04-27  Daniel Morgan <danmorg@sc.rr.com>
1218
1219         * System.Data/DataRowChangeEventArgs.cs
1220         * System.Data/DataRowCollection.cs
1221         * System.Data/DataView.cs
1222         * System.Data/PropertyCollection.cs: added new stubs
1223
1224         * System.Data.build: modified - added new files to exclude
1225         from build
1226         
1227         * TODO: modified - removed files from TODO list 
1228         that were stubbed above
1229         
1230         * System.Data/DataColumn.cs
1231         * System.Data/DataRow.cs: modified - various tweaks
1232         and added internal method SetTable to set the reference
1233         to a DataTable
1234         
1235         * System.Data/DataSet.cs: modified - class was not
1236         completely stubbed.
1237         
1238         * System.Data/DataTable.cs: modified - temporarily commented
1239         DataSet and DataView references - trying to compile a SqlDataReader,
1240         DataTable, and dependencies for a forward read-only result set.
1241         SqlDataAdapter, DataSet, and DataView will come later once we can get
1242         a forward read only result set working.
1243         
1244         * System.Data/IDataRecord.cs: modified - source code lines should
1245         not be > 80
1246         
1247         * System.Data/InternalDataCollectionBase.cs: modified - started 
1248         implementing this base class for collection of data rows,
1249         columns, tables, relations, and constraints
1250         
1251         * System.Data.SqlClient/SqlException.cs: modified -
1252         call base(message) so a unhandled exception displays
1253         the message of a SQL error instead of the 
1254         default SystemException message
1255         
1256         * Test/TestSqlException.cs: modified - 
1257         handle the rollback properly for a SqlException on a
1258         failure to connect
1259
1260 2002-04-23  Daniel Morgan <danmorg@sc.rr.com>
1261
1262         * System.Data.build: modified - added new
1263         files to exclude from build 
1264         
1265         * System.Data/Constraint.cs
1266         * System.Data/ConstraintCollection.cs
1267         * System.Data/InternalDataCollectionBase.cs: added -
1268         stubs which are needed to build DataTable.cs
1269         
1270         * TODO: modified - added more classes TODO and
1271         added more stuff TODO, such as, create script
1272         to create test database monotestdb for testing
1273         classes in System.Data
1274
1275 2002-04-23  Rodrigo Moya <rodrigo@ximian.com>
1276
1277         * System.Data.Common/DataAdapter.cs:
1278         * System.Data.Common/DataColumnMappingCollection.cs:
1279         * System.Data.Common/DataTableMappingCollection.cs:
1280         * System.Data.Common/DbDataPermission.cs:
1281         * System.Data.Common/DbDataPermissionAttribute.cs: some
1282         compilation errors fixed.
1283
1284 2002-04-23  Daniel Morgan <danmorg@sc.rr.com>
1285
1286         * TODO: modified - added classes TODO, and
1287         a poor attempt at System.Data plan
1288
1289 2002-04-23  Daniel Morgan <danmorg@sc.rr.com>
1290
1291         * ChangeLog: modified - put tabs where they belong
1292         
1293         * System.Data.SqlClient/SqlDataReader.cs
1294         * System.Data/DataColumn.cs: modified - compile errors
1295         trying to compile SqlDataAdapter and dependencies
1296
1297 2002-04-23  Daniel Morgan <danmorg@sc.rr.com>
1298
1299         * System.Data.SqlTypes/SqlBoolean.cs
1300         * System.Data.SqlTypes/SqlCompareOptions.cs
1301         * System.Data.SqlTypes/SqlInt32.cs
1302         * System.Data.SqlTypes/SqlString.cs: added - new stubs
1303
1304         * System.Data/DataTable.cs
1305         * System.Data.SqlClient/SqlCommand.cs
1306         * System.Data.SqlClient/SqlConnection.cs
1307         * System.Data.SqlClient/SqlError.cs
1308         * System.Data.SqlClient/SqlTransaction.cs: modified - 
1309         misc. tweaks
1310
1311         * System.Data.SqlClient/SqlException.cs: modified -
1312         missing Message on indexer for Message property
1313
1314 2002-04-21  Daniel Morgan <danmorg@sc.rr.com>
1315
1316         * System.Data.SqlClient/SqlCommand.cs: modified - to 
1317         compile using mcs.  This problem is
1318         returning a stronger type in csc vs. msc
1319
1320         * System.Data.SqlClient/SqlConnection.cs: modified - msc
1321         can not do a using PGconn = IntPtr; and then declare
1322         with PGconn pgConn = IntPtr.Zero;
1323         Thiw works under csc though.  Had to comment using and
1324         changed declaration to IntPtr pgConn = IntPtr.Zero;
1325         Also, got rid of compile warnings for hostaddr and port.
1326
1327         * System.Data.SqlClient/SqlErrorCollection.cs: modified - got
1328         rid of compile warnings.  Commented MonoTODO attribute because mcs
1329         doesn't seem to work with C# array property indexer (Item)
1330         this[int index]
1331
1332         * System.Data.SqlClient/SqlParameterCollection.cs: modified -
1333         commented MonoTODO attribute for indexer for mcs compiling
1334
1335         * Test/TestSqlIsolationLevel.cs:
1336         * Test/TestSqlInsert.cs:
1337         * Test/TestSqlException.cs: modified -
1338         removed extra ExecuteNonQuery which caused two inserted rows
1339
1340 2002-04-20  Daniel Morgan <danmorg@sc.rr.com>
1341
1342         * System.Data/StateChangeEventArgs.cs - added
1343         needed to compile System.Data.dll with mcs.  
1344
1345 2002-04-20  Daniel Morgan <danmorg@sc.rr.com>
1346
1347         * System.Data.OleDb: added directory - for OleDb database 
1348         provider classes
1349
1350         * System.Data.SqlClient/SqlClientPermission.cs
1351         * System.Data.SqlClient/SqlClientPermissionAttribute.cs
1352         * System.Data.SqlClient/SqlCommandBuilder.cs
1353         * System.Data.SqlClient/SqlInfoMessageEventHandler.cs
1354         * System.Data.SqlClient/SqlRowUpdatedEventArgs.cs
1355         * System.Data.SqlClient/SqlRowUpdatedEventHandler.cs
1356         * System.Data.SqlClient/SqlRowUpdatingEventArgs.cs
1357         * System.Data.SqlClient/SqlRowUpdatingEventHandler.cs
1358         * Test/TestSqlException.cs
1359         * Test/TestSqlIsolationLevel.cs: added - more tests
1360
1361         * System.Data.build: modified - added new files - excludes these too
1362
1363         * System.Data.SqlClient/PostgresLibrary.cs - modified - comment
1364
1365         * System.Data.SqlClient/SqlConnection.cs 
1366         * System.Data.SqlClient/SqlCommand.cs
1367         * System.Data.SqlClient/SqlTransaction.cs
1368         * System.Data.SqlClient/SqlException.cs
1369         * System.Data.SqlClient/SqlErrorCollection.cs
1370         * System.Data.SqlClient/SqlError.cs: modified - transaction and
1371         exception/error handling. SqlConnection(connectionString) 
1372         constructor should not automatically connect.
1373   
1374         * System.Data.SqlClient/SqlDataReader.cs
1375         * System.Data.SqlClient/SqlDataAdapter.cs
1376         * System.Data.SqlClient/SqlParameter.cs
1377         * System.Data.SqlClient/SqlParameterCollection.cs: modified - 
1378         added using System.ComponentModel;
1379   
1380         * Test/TestSqlInsert.cs: modified - to use transaction
1381
1382 2002-04-17  Rodrigo Moya <rodrigo@ximian.com>
1383
1384         * System.Data/DataRow.cs: new skeletons.
1385
1386         * System.Data.Common/DataAdapter.cs:
1387         * System.Data.Common/DataColumnMapping.cs:
1388         * System.Data.Common/DataColumnMappingCollection.cs:
1389         * System.Data.Common/DataTableMapping.cs:
1390         * System.Data.Common/DataTableMappingCollection.cs:
1391         * System.Data.Common/DbDataAdapter.cs:
1392         * System.Data.Common/RowUpdatedEventArgs.cs:
1393         * System.Data.SqlClient/SqlDataAdapter.cs:
1394         * System.Data.SqlClient/SqlInfoMessageEventArgs.cs: compilation
1395         fixes for Linux.
1396
1397         * System.Data.Common/DbDataRecord.cs:
1398         * System.Data.Common/DbEnumerator.cs: removed MS implementation
1399         internal classes.
1400
1401 2002-04-17  Daniel Morgan <danmorg@sc.rr.com>
1402
1403         * Test/TestSqlInsert.cs: modified - do
1404           a SQL DELETE before SQL INSERT of row so you can use this
1405           test over and over.
1406         
1407         * System.Data.SqlClient/SqlTransaction.cs: modified - default
1408           IsolationLevel for PostgreSQL is ReadCommitted.  However,
1409           PostgreSQL allows Serializable as well. 
1410       (Thanks to Gonzalo for that!)
1411         
1412         * System.Data.SqlClient/SqlConnection.cs: modified
1413         * System.Data.SqlClient/SqlCommand.cs: modified
1414         * System.Data.SqlClient/SqlTransaction.cs: modified - got transactions
1415           working; however, we still need to implement SQL errors
1416           and exceptions to properly handle transactions.  Also, added
1417           status and error message support from the PostgreSQL database.
1418           Currently, this does a Console.WriteLine() to display the
1419           status and error messages, but this is a TODO 
1420           for SQL errors and exceptions.
1421         
1422         * System.Data/TODOAttribute.cs: added - needed MonoTODO
1423       attribute for System.Data.dll assembly 
1424
1425         * System.Data/IDbCommand.cs: modified - commented
1426           overloaded method ExecuteReader 
1427           so System.Data.SqlClient.SqlCommand can compile
1428           
1429         * System.Data/IDbCommand.cs: modified
1430         * System.Data/IDbConnection.cs: modified - added using System;
1431         * System.Data/IDataParameter.cs
1432         
1433         * System.Data.build: modified - build classes
1434           in System.Data.SqlClient and exclude others in System.Data
1435         
1436         * System.Data.SqlClient/PostgresLibrary.cs: modified - change
1437           parameter data type from IntPtr to enum ExecStatusType
1438         
1439         * ChangeLog: modified - corrected previous entries in log
1440
1441 2002-04-16  Rodrigo Moya <rodrigo@ximian.com>
1442
1443         * System.Data.Common/DataColumnMappingCollection.cs: added basic
1444         implementation. Still missing some stuff.
1445
1446 2002-04-16  Daniel Morgan <danmorg@sc.rr.com>
1447
1448         * System.Data.SqlClient/SqlConnection.cs: modified - got 
1449       to compile, run, and connect to PostgreSQL database
1450       
1451         * System.Data.SqlClient/SqlCommand.cs: modified - got 
1452       to compile, run, and execute a SQL INSERT command 
1453       which successfully inserted a row 
1454       into the PostgreSQL database
1455
1456         * System.Data.SqlClient/SqlTransaction.cs: modified
1457         * System.Data.SqlClient/SqlParameter.cs: modified
1458         * System.Data.SqlClient/SqlParameterCollection.cs: modified
1459         * System.Data.SqlClient/SqlError.cs: modified
1460         * System.Data.SqlClient/SqlErrorCollection.cs: modified
1461         * System.Data.SqlClient/SqlException.cs: modified
1462         * System.Data.SqlClient/PostgresLibrary.cs: modified - to compile
1463
1464         * System.Data.SqlClient/SqlAdapter: modified
1465         * System.Data.SqlClient/SqlReader: modified - add more stubs
1466         
1467 2002-04-16  Daniel Morgan <danmorg@sc.rr.com>
1468
1469         * Test/TestSqlInsert.cs: added 
1470
1471 2002-04-15  Daniel Morgan <danmorg@sc.rr.com>
1472
1473         * System.Data.SqlClient/SqlInfoMessageEventArgs.cs: added - using in
1474           class SqlConnecition
1475         * System.Data.SqlClient/SqlErrorCollection.cs: added
1476         * System.Data.SqlClient/SqlErrors.cs: removed - no such class SqlErrors
1477
1478 2002-04-15  Christopher Podurgiel <cpodurgiel@msn.com>
1479         
1480         * System.Data.IDbDataParameter: Added Interface to IDataParameter.
1481         * System.Data.IDbTransaction: Added Interface to IDisposable.
1482         * System.Data.IDbCommand: Fixed Capitalization of class name.
1483         * System.Data.IDbConnection: Fixed Capitalization of class name.
1484
1485 2002-04-15  Rodrigo Moya <rodrigo@ximian.com>
1486
1487         * System.Data.Common/DbDataPermissionAttribute.cs:
1488         * System.Data.Common/DataAdapter.cs:
1489         * System.Data.Common/DataColumnMapping.cs:
1490         * System.Data.Common/DbDataPermission.cs: added some implementation.
1491
1492 2002-04-15  Rodrigo Moya <rodrigo@ximian.com>
1493
1494         * System.Data.SqlClient/SqlConnection.cs: fixed constructor chaining
1495         syntax, as pointed out by Levent Camlibel.
1496
1497 2002-04-14  Rodrigo Moya <rodrigo@ximian.com>
1498
1499         * System.Data.SqlTypes/SqlBinary.cs:
1500         * System.Data.SqlTypes/INullable.cs: new skeletons.
1501
1502 2002-04-14  Daniel Morgan <danmorg@sc.rr.com>
1503
1504         * System.Data.SqlClient/PostgresLibrary.cs: new internal class, which
1505         contains all calls the the PostgreSQL client library, to be used
1506         everywhere in System.Data.SqlClient.
1507
1508 2002-03-30  Rodrigo Moya <rodrigo@ximian.com>
1509
1510         * System.Data.SqlClient/SqlConnection.cs: implemented basic
1511         constructors.
1512
1513         * System.Data.SqlTypes/SqlNullValueException.cs: new skeletons.
1514
1515 2002-03-29  Rodrigo Moya <rodrigo@ximian.com>
1516
1517         * System.Data.Common/DbDataRecord.cs:
1518         * System.Data.Common/DbEnumerator.cs:
1519         * System.Data.Common/RowUpdatedEventArgs.cs:
1520         * System.Data.Common/RowUpdatingEventArgs.cs:
1521         * System.Data.Common/DbDataPermissionAttribute.cs: new skeletons.
1522
1523 2002-03-28  Rodrigo Moya <rodrigo@ximian.com>
1524
1525         * System.Data.Common/DataTableMappingCollection.cs:
1526         * System.Data.Common/DbDataAdapter.cs:
1527         * System.Data.Common/DbDataPermission.cs:
1528         * System.Data.Common/DataTableMapping.cs: new skeletons.
1529
1530         * System.Data.SqlClient/SqlDataAdapter.cs:
1531         * System.Data.SqlClient/SqlDataReader.cs:
1532         * System.Data.SqlClient/SqlErrors.cs:
1533         * System.Data.SqlClient/SqlError.cs:
1534         * System.Data.SqlClient/SqlException.cs:
1535         * System.Data.SqlClient/SqlParameter.cs:
1536         * System.Data.SqlClient/SqlParameterCollection.cs:
1537         * System.Data.SqlClient/SqlTransaction.cs:
1538         * System.Data.SqlClient/SqlCommand.cs: fixed skeletons.
1539
1540 2002-03-27  Rodrigo Moya <rodrigo@ximian.com>
1541
1542         * System.Data.Common/DataColumnMapping.cs:
1543         * System.Data.Common/DataColumnMappingCollection.cs:
1544         * System.Data.Common/DataAdapter.cs: created skeletons.
1545
1546         * System.Data.build: exclude new directories from build.
1547
1548 2002-03-27  Rodrigo Moya <rodrigo@ximian.com>
1549
1550         * System.Data.SqlClient/SqlTransaction.cs: started implementation.
1551         
1552         * System.Data.SqlClient/SqlConnection.cs (BeginTransaction):
1553         implemented (2 methods).
1554
1555 2002-03-24  Duncan Mak  <duncan@ximian.com>
1556
1557         * System.Data.build: Excluded System.Data.SqlClient from the build.
1558         The stubs are incomplete and they are stopping the build.
1559
1560         * System.Data.SqlClient/SqlCommand.cs: Replaced 'implements' with ':'.
1561
1562 2002-03-24  Rodrigo Moya <rodrigo@ximian.com>
1563
1564         * System.Data.SqlClient/*: added skeletons for the SQL managed
1565         provider for ADO.Net, to be based initially in PostgreSQL.
1566
1567 2002-03-15  Christopher Podurgiel <cpodurgiel@msn.com>
1568         
1569         Changed the Namespace on some Enums from mono.System.Data to System.Data
1570
1571 2002-03-01  Christopher Podurgiel <cpodurgiel@msn.com>
1572
1573         * DataColumnCollection.cs : When an existing DataColumn is added, will now Assign a 
1574                 default name if the ColumnName is null.
1575         * DataSet.cs : Added
1576         * DataTable.cs : Added
1577         * DataRelationCollection.cs : Added
1578         * DataTableRelationCollection.cs : Added
1579         * DataColumn : Added
1580
1581 2002-02-11  Christopher Podurgiel <cpodurgiel@msn.com>
1582
1583         * DataColumnChangeEventArgs.cs : Added
1584         * DataColumnCollection.cs : Added
1585
1586 2002-02-10  Christopher Podurgiel <cpodurgiel@msn.com>
1587         
1588         * Removed *.cs from System.Data as the correct files are in mcs/class/System.Data/System.Data
1589         * Updated all Enums, Interfaces, and Delegates in System.Data