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