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