2002-06-06 Rodrigo Moya * list: added missing PostgresTypes.cs file. 2002-06-02 Francisco Jr. * System.Data.SqlClient/SqlParameterCollection.cs: implemented missing methods. 2002-05-30 Daniel Morgan * System.Data.SqlClient/SqlConnection.cs: modifed - start to implement the interfaces properly and properly doing a Close(), Dispose(), and releasing resources * Test/SqlSharpCli.cs: modified - add support for MySQL in Mono.Data.MySql and OleDb support in System.Data.OleDb. However, the OleDb support is commented right now. When the program starts up, a shorter help menu should display the most important commands: help and quit 2002-05-28 Rodrigo Moya * System.Data.build: exclude System.Data.OleDb files. 2002-05-27 Daniel Morgan * System.Data.SqlClient/SqlCommand.cs: typo should be CommandBehavior.KeyInfo * Test/SqlSharpCli.cs: refactored and added a few more features. 2002-05-27 Tim Coleman * list: update to compile properly (add missing files and switch path delimiter from '\' to '/'). 2002-05-26 Daniel Morgan * System.Data/DataRow.cs * System.Data.Common/DbDataAdapter.cs: fix to get Test/TestSqlDataAdapter.cs to work again * Test/TestSqlDataAdapter.cs: removed comment about SqlDataReader:NextResult() not being implemented; it bas been implemented 2002-05-26 Daniel Morgan * System.Data/DataRow.cs: modified support setting of DBNull.Value using the Item indexer this[DataColumn] * System.Data.SqlClient/SqlCommand.cs: modified tweaks to show TODO's for other CommandBehavior. Set AllowDBNull column to true for IsKey row in schema DataTable. * System.Data.SqlClient/SqlConnection.cs: modified if transaction is in progress when a Close() is called, do a transaction Rollback. 2002-05-26 Daniel Morgan * Test/SqlSharpCli.cs: added file My new toy. SQL# is a command-line tool to enter SQL commands and queries using Mono System.Data. It also serves as a test for Mono System.Data. * System.Data.SqlClient/SqlCommand.cs: modified - ExecuteNonQuery(), ExecuteScalar(), and ExecuteReader() should handle the results from SQL Commands and Queries. - Internal class SqlResult should not create schema Table for the result from a SQL Command. Also, set the RecordsRetrieved property for SqlDataReader. - Closing the SqlDataReader should Close() the SqlConnection for a CommandBehavior.CloseConnection. - Set defaults for SqlResult * System.Data.SqlClient/SqlConnection.cs: modified - when SqlDataReader is Close() should Close() the SqlConnection for a CommandBehavior.CloseConnection. Changed internal Property from OpenReader get/set to IsReaderOpen get and created internal methods OpenReader()/CloseReader() for SqlCommand to call. SqlConnection needs to be prevented from doing while SqlDataReader is being used. * System.Data.SqlClient/SqlDataReader.cs: modified - call SqlCommand's OpenReader() internal method. get RecordsRetrieved from SqlResult. set/reset default values for SqlDataReader. * Test/PostgresTest.cs * Test/TestExecuteScalar.cs * Test/TestSqlDataReader.cs: modified for the Execute...() methods in SqlCommand to test SQL Queries and Commands * Test/System.Data_test.build: modified exclude new file Test/SqlSharpCli.cs from test build 2002-05-24 Tim Coleman * System.Data.Common/DbDataAdapter.cs: remove IDbCommands, except for get accessors. These should be implemented in derived classes. See SqlDataAdapter for clues. * System.Data.SqlClient/SqlDataAdapter.cs: implement IDbDataAdapter * System.Data.Common/DataAdapter.cs: * System.Data.Common/DataTableMappingCollection.cs: * System.Data.Common/DataTableMapping.cs: * System.Data.Common/DataColumnMappingCollection.cs: * System.Data.Common/DataColumnMapping.cs: Properly (I hope!) implement all of the appropriate interfaces for these classes. 2002-05-23 Tim Coleman * System.Data.SqlClient/SqlCommand.cs: include the BaseColumnName in the schema table. Was missed before. * System.Data.Common/DbDataAdapter.cs: Use DataTable mappings so that the DataSet and DataTable are more closely tied. Get schema information from the DataTable using GetSchemaTable () Various other little fixes * System.Data.Common/DataColumnMappingCollection.cs: * System.Data.Common/DataTableMapping.cs: * System.Data.Common/DataTableMappingCollection.cs: Some implementation, enough to be used by DbDataAdapter. 2002-05-23 Daniel Morgan * System.Data.SqlClient/SqlCommand.cs: set the "ProviderType" to the PostgreSQL type oid * System.Data.SqlClient/SqlDataReader.cs: fix for various properties and methods that return meta data: Item indexers this[name] and this[index], GetFieldType, GetName, and GetOrdinal. SqlDataAdapter should work again. 2002-05-22 Daniel Morgan * System.Data/DataRow.cs: change suggested by tim: in Item indexer, do an EndEdit() * System.Data.SqlClient/SqlCommand.cs: more fixes to SqlResult. After setting each item in the DataRow, do an AcceptChanges() to commit the changes in the DataRow. For DataType, use a Type of System.String since System.Type nor System.Object seems to work. * Test/TestSqlDataReader.cs * Test/PostgresTest.cs: updated to to be on the way schema table is suppose to work 2002-05-22 Daniel Morgan * System.Data.SqlClient/SqlCommand.cs: more work on building the schema table 2002-05-22 Tim Coleman * System.Data.SqlClient/SqlCommand.cs: preliminary work on getting the schema table correctly built. 2002-05-21 Daniel Morgan * System.Data.SqlClient/ParmUtil.cs: added file - to provide utility for conversion of input parameters * System.Data.SqlClient/PostgresTypes.cs: added file - moved the PostgreHelper class to here. May eventually move the internal class PostgresTypes that's inside the SqlConnection to here as well. Handling of PostgreSQL <-> .NET types need to be though out more. Also, the PostgreHelper has a method to convert from .NET types to a string which can be put into used in an SQL statement to execute against a PostgreSQL database. This is the beginnings of parameters support. It currently only supports input parameters. Still need to do output, input/output, and return parameters. * Test/TestSqlParameters.cs: new test to test the input parameters in System.Data.SqlClient against a PostgreSQL db. * System.Data.SqlClient/PostgresLibrary.cs: moved PostgresHelper class to file PostgresTypes.cs. Also moved struct PostgresType there too. * System.Data.SqlClient/SqlCommand.cs: added input parameters support * System.Data.SqlClient/SqlParameter.cs: got SqlParameter to work * System.Data.SqlClient/SqlParameterCollection.cs: got SqlParameterCollection to work * Test/System.Data_test.build: added files to exclude from test build * System.Data.SqlClient/SqlConnection.cs: release resources no longer used 2002-05-18 Daniel Morgan * System.Xml: added directory for classes with namespace System.Xml to go into the System.Data.dll assembly * System.Xml/XmlDataDocument: added file for stubbed concrete class XmlDataDocument which inherits from XmlDocument. Its purpose is to provide a W3C XML DOM Document for relational data and interacting with a DataSet 2002-05-18 Daniel Morgan * System.Data.SqlClient/SqlCommand.cs: handle CommandTypes Text, TableDirect, and StoredProcedure * Test/PostgresTest.cs: changed call to version() stored procedure to use the CommandType of StoredProcedure * Test/TestSqlDataReader.cs: test all the CommandTypes 2002-05-18 Daniel Morgan * System.Data.build: took out all excluded files except the ones in the Test directory because all files compile now. It does not mean they all work or have implementations though. * System.Data/DataRelationCollection.cs * System.Data/DataTableRelationCollection.cs * System.Data/InternalDataCollectionBase.cs * System.Data.Common/DbDataPermission.cs * System.Data.SqlClient/SqlInfoMessageEventArgs.cs * System.Data.SqlClient/SqlClientPermission.cs * System.Data.SqlClient/SqlClientPermissionAttribute.cs: changes to get all System.Data* files to compile. * System.Data.SqlClient/SqlCommand.cs: started coding to prevent SqlConnection and SqlCommand from doing anyting while fetching data using SqlDataReader. Also, started coding to undo this prevention once the SqlDataReader is closed. * System.Data.SqlClient/SqlConnection.cs: get database server version. Started coding to prevent connection from doing anything while fetching data and undo once the reader is closed. Include events SqlInfoMessage and StateChange. * System.Data.SqlClient/SqlDataReader.cs: start coding to prevent connection and command from doing anything while fetching data, and undo when closed. * Test/PostgresTest.cs: added test to get ServerVersion property from SqlConnection 2002-05-18 Tim Coleman * System.Data/DataRow.cs: More implementation, as well as boundary checks and small semantic repairs 2002-05-18 Tim Coleman * System.Data/DataRow.cs: Try to reduce memory usage by only creating the original and proposed arrays as required in BeginEdit, and then destroying proposed during EndEdit, and original during AcceptChanges. * System.Data.Common/DbDataAdapter.cs: Make the startRecord and maxRecords parameters work correctly. 2002-05-18 Tim Coleman * System.Data/DataRow.cs: Move the null check in ItemArray set to above the Invalid Cast check, so that we don't get null reference exceptions. 2002-05-17 Daniel Morgan * System.Data.SqlClient/PostgresLibrary.cs: handle data value from database being NULL * System.Data.SqlClient/SqlCommand.cs: for ExecuteReader, allow multiple result sets. Added new internal class SqlResult to pass result set data from SqlCommand to SqlDataReader. * System.Data.SqlClient/SqlDataReader.cs: allow multiple result sets. * System.Data.SqlClient/SqlConnection.cs: moved things around. Implement IDisposable. * Test/TestSqlDataReader.cs: test for execution of multiple result sets and display the results of these multiple results sets * Test/TestSqlDataAdapter.cs: tweaks 2002-05-17 Tim Coleman * System.Data.Common/DbDataAdapter.cs: - More implementation of Fill methods - Get rid of isDirty flag, because we can just check if the table exists - Do *not* remove DataTables before Filling them - Implicitly open the connection before doing a Fill if it does not exist. * System.Data.SqlClient/SqlDataAdapter.cs: - Minor fixup * System.Data/DataTableCollection.cs: - Add DataSet to internal, undocumented constructor - When a table is created, set its DataSet property - Default table name for creation is "Table1" (see .NET) - Inherit the ArrayList list from InternalDataCollecitonBase and maintain a hashtable between table names and DataTables * System.Data/DataTable.cs: - Add internal dataSet field. This is used by DataTableCollection when the DataTable is constructed. * System.Data/DataSet.cs: - Pass a reference to the DataSet when constructing the DataTableCollection. 2002-05-16 Tim Coleman * System.Data.Common/DbDataAdapter.cs: Use table.Rows.Add (itemArray) instead of table.Rows.Add (thisRow) to provide better abstraction. * System.Data/DataRowCollection.cs: Some implementation of this class. * System.Data/InternalDataCollectionBase.cs: Some implementation. Most notably, this now has an enumerator so we can use foreach (DataRow row in table.Rows) in the test classes. * System.Data/DataTable.cs: Since DataRowCollection now accepts a DataTable in its internal constructor, we must pass one in. 2002-05-16 Daniel Morgan * Test/TestSqlDataAdapter.cs: added new test for SqlDataAdapter, DataSet, DataTableCollection, DataTable, DataRowCollection, and DataRow. It tests retrieving data based on a SQL SELECT query. This test is based on Tim Coleman's test he sent to me. 2002-05-16 Tim Coleman * System.Data.Common/DbDataAdapter.cs: Use table.Rows.Add (thisRow) instead of table.ImportRow (thisRow) * System.Data/DataRowCollection.cs: Construct the ArrayList before using it 2002-05-16 Tim Coleman * System.Data/DataTable.cs: Construct the DataRowCollection in the DataTable constructor. Otherwise, it's a null reference. 2002-05-16 Tim Coleman * System.Data.SqlClient/SqlDataReader.cs: Modify GetValues to use Array.Copy() to copy the results from fields to values, rather than an assignment, which results in loss of data. 2002-05-16 Tim Coleman * System.Data/DataRow.cs: More implementation and documentation. It should work more like expected, although there is no way to demonstrate this well yet. DataTable requires more work. 2002-05-15 Tim Coleman * System.Data/DataRow.cs: Minor tweaks as I determine exactly how to implement this class. 2002-05-14 Duncan Mak * System.Data/DataTable.cs (NewRow): Added missing paren to fix build. 2002-05-14 Tim Coleman * System.Data/DataRow.cs: * System.Data/DataRowBuilder.cs: * System.Data/DataTable.cs: More implementation of these classes. DataRow can now (possibly) do some useful things. Still not sure what DataRowBuilder is all about, other than passing a DataTable in. 2002-05-14 Tim Coleman * System.Data/DataRowBuilder.cs: Add stubb for this internal class. 2002-05-13 Tim Coleman * System.Data.Common/DbDataAdapter.cs: The maxRecords check was not correct. 2002-05-13 Tim Coleman * System.Data/DataTableCollection.cs: Fix an issue when adding a DataTable and size == 0. Now explicitly checks if size > 0 before doing Array.Copy () * System.Data.Common/DbDataAdapter.cs: Move closer to a working implementation. Make the IDbCommand fields protected so that they can be inherited. * System.Data.SqlClient/SqlDataAdapter.cs: This should inherit the IDbCommands instead of having its own. An explicit cast is used to force conversion between IDbCommand and SqlCommand 2002-05-13 Tim Coleman * System.Data.Common/DataTableMappingCollection.cs: Some implementation to allow progress with DbDataAdapter 2002-05-13 Tim Coleman * System.Data.Common/DbDataAdapter.cs: Modify to not break compile. 2002-05-13 Tim Coleman * System.Data.build: include SqlDataAdapter, SqlRowUpdatedEventArgs, SqlRowUpdatingEventArgs, SqlRowUpdatedEventHandler, SqlRowUpdatingEventHandler in the build. 2002-05-13 Tim Coleman * System.Data.Common/DbDataAdapter.cs: More implementation. * System.Data.Common/DataAdapter.cs: Correction of some of the stubbing, as well as a little bit more implementation 2002-05-11 Tim Coleman * System.Data.SqlClient/SqlDataAdapter.cs: * System.Data.Common/DbDataAdapter.cs: Moved methods that weren't supposed to be in SqlDataAdapter out. They should be implemented in DbDataAdapter. 2002-05-11 Tim Coleman * System.Data.SqlClient/SqlDataAdapter.cs: some implementation of this class. Note that none of the functionality has been tested yet, but I felt it should be checked in at this point as it compiles. * System.Data.SqlClient/SqlRowUpdatingEventArgs.cs: * System.Data.SqlClient/SqlRowUpdatedEventArgs.cs: Modified so that they will compile properly. Needed to include SqlDataAdapter in the build. 2002-05-11 Rodrigo Moya * System.Data/DataTable.cs (Clear): implemented. (DataTable): removed repeated code in constructors, and call the basic constructor from the others. * System.Data/DataColumn.cs: some tweaks. * System.Data/DataRow.cs (RowState): implemented. (CancelEdit): set rowState property back to Unchanged. (RejectChanges): call CancelEdit. (Delete): set rowState to Deleted. 2002-05-11 Daniel Morgan * System.Data.build: added copy of System.Data.dll to Test directory for easy testing. Also, added clean for it too. * System.Data.SqlClient/PostgresLibrary.cs: changed setting of boolean from PostgreSQL data type to .NET type. * System.Data.SqlClient/SqlDataReader.cs: beginnings handling of a NULL value from the database * Test/PostgresTest.cs: added tests for NULL values retrieved from the database * Test/ReadPostgresData.cs * Test/TestExecuteScalar.cs * Test/TestSqlDataReader.cs * Test/TestSqlException.cs * Test/TestSqlIsolationLevel.cs: updated tests to use databas user "postgres". These tests may eventually be removed since they are not flexible. 2002-05-10 Rodrigo Moya * System.Data.build: removed reference to non-existant TestDataColumn.cs file. * System.Data/DataSet.cs: added some implementation. 2002-05-09 Daniel Morgan * System.Data.SqlClient/PostgresLibrary.cs: got PostgreSQL data types time, date, timestamp (DateTime like) mapped to .NET System.DateTime working based on ISO DateTime formatting "YYYY-MM-DD hh:mi:ss.ms" Also mapped pg type boolean to .net Boolean * SqlClient/SqlConnection.cs: run SQL command to set Date style to ISO * Test/PostgresTest.cs: added test for an UPDATE SQL command, added tests for aggregates min(), max(), sum(), count(). could not get avg() to work due to some formatting error; someone claimed that it was my locale settings. added tests for SELECT of columns of type boolean, float, double, date, time, and timestamp. They have not been fully tested, but its a start. 2002-05-09 Tim Coleman * System.Data.SqlTypes/SqlDecimal.cs: Implementations of addition, subtraction, and multiplication for the SqlDecimal type, as well as modification of some other operations. More to come on this one. 2002-05-08 Rodrigo Moya * Test/System.Data_test.build: excluded TestDataColumn, which should be replaced with a nunit test. * Test/TestDataColumn.cs: added basic test for DataColumn.cs. 2002-05-07 Tim Coleman * SqlBinary.cs: * SqlBoolean.cs: * SqlByte.cs: * SqlDateTime.cs: * SqlDecimal.cs: * SqlDouble.cs: * SqlGuid.cs: * SqlInt16.cs: * SqlInt32.cs: * SqlInt64.cs: * SqlMoney.cs: * SqlSingle.cs: * SqlString.cs: Fix the broken build I made before. Bad me. 2002-05-07 Tim Coleman * SqlString.cs: Fix a symantic error I made in SqlString Equals where I copied and pasted wrongly 2002-05-07 Tim Coleman * INullable.cs: * SqlBinary.cs: * SqlBoolean.cs: * SqlByte.cs: * SqlCompareOptions.cs: * SqlDateTime.cs: * SqlDecimal.cs: * SqlDouble.cs: * SqlGuid.cs: * SqlInt16.cs: * SqlInt32.cs: * SqlInt64.cs: * SqlMoney.cs: * SqlSingle.cs: * SqlString.cs: Implement CompareTo, Equals, and String conversions for many types 2002-05-05 Daniel Morgan * Test/PostgresTest.cs: modified to run completely. There are many TODOs in System.Data, so not all data types are included in the SELECT SQL query. Also, I made it to where it would connect using "host=localhost;dbname=test;user=postgres" instead of my userid and password. When more types are included, update this test. 2002-05-05 Daniel Morgan * Test/PostgresTest.cs: added - ported libgda postgres-test.c originally by Gonzalo Paniagua Javier to C#. 2002-05-05 Tim Coleman * System.Data.SqlTypes/SqlBinary.cs: * System.Data.SqlTypes/SqlBoolean.cs: * System.Data.SqlTypes/SqlByte.cs: * System.Data.SqlTypes/SqlDateTime.cs: * System.Data.SqlTypes/SqlDecimal.cs: * System.Data.SqlTypes/SqlDouble.cs: * System.Data.SqlTypes/SqlGuid.cs: * System.Data.SqlTypes/SqlInt16.cs: * System.Data.SqlTypes/SqlInt32.cs: * System.Data.SqlTypes/SqlInt64.cs: * System.Data.SqlTypes/SqlMoney.cs: * System.Data.SqlTypes/SqlSingle.cs: * System.Data.SqlTypes/SqlString.cs: More implementation, and code clean-up for consistency. Also, I had implemented many conversions as explicit that should have been implicit. This should remove many of the red X's and green pluses from the System.Data.SqlTypes namespace. 2002-05-05 Miguel de Icaza * System.Data/DataSet.cs: Remove [Serializable] attributes from methods, those only apply to structs or classes. Stub out ISerializable, ISupportInitialize, and IListSource methods * System.Data/DataRowView.cs: Stub out interface methods for IEditableObject, ICustomTypeDescriptor and IDataErrorInfo * System.Data/DataView.cs: Comment out non-implemented interfaces. * System.Data/DataViewSettingsCollection.cs: Type cast variables to the correct type to make it compile. * System.Data/DataViewSettings.cs: remove reference to non-existance type ApplyDefaultSort, it is a boolean. 2002-05-05 Tim Coleman * System.Data.SqlTypes/SqlBinary.cs: * System.Data.SqlTypes/SqlBoolean.cs: * System.Data.SqlTypes/SqlByte.cs: * System.Data.SqlTypes/SqlDecimal.cs: * System.Data.SqlTypes/SqlDouble.cs: * System.Data.SqlTypes/SqlGuid.cs: * System.Data.SqlTypes/SqlInt16.cs: * System.Data.SqlTypes/SqlInt32.cs: * System.Data.SqlTypes/SqlInt64.cs: * System.Data.SqlTypes/SqlMoney.cs: * System.Data.SqlTypes/SqlSingle.cs: * System.Data.SqlTypes/SqlString.cs: Various fixes, including adding the SqlNullValueException when trying to retrieve the value of a null SqlType, and when casting values, a Null of type A converts to a Null of type B. 2002-05-04 Daniel Morgan * System.Data.SqlClient/PostgresLibrary.cs * System.Data.SqlClient/SqlCommand.cs * System.Data.SqlClient/SqlConnection.cs * System.Data.SqlClient/SqlDataReader.cs oid should not be hard coded because they can change from one version of PostgreSQL to the next. Use the typname's instead. The PostgreSQL type data retrieves at database connection time. Any unimplemented types just default to string. These were things suggested by Gonzalo. * Test/ReadPostgresData.cs - stuff * Test/TestSqlDataReader.cs - stuff * System.Data.SqlTypes/SqlInt32.cs - added a using 2002-05-03 Tim Coleman * System.Data.build: Fix the build so that test depends on build 2002-05-03 Tim Coleman * System.Data.SqlTypes/SqlByte.cs: * System.Data.SqlTypes/SqlDateTime.cs: * System.Data.SqlTypes/SqlDecimal.cs: * System.Data.SqlTypes/SqlDouble.cs: * System.Data.SqlTypes/SqlGuid.cs: * System.Data.SqlTypes/SqlInt16.cs: * System.Data.SqlTypes/SqlInt64.cs: * System.Data.SqlTypes/SqlMoney.cs: * System.Data.SqlTypes/SqlSingle.cs: These files were mysteriously excluded from the last patch I made and sent to Rodrigo * System.Data.build: include the System.Data.SqlTypes in the build 2002-05-03 Daniel Morgan * System.Data.build: removed comments * System.Data.SqlClient/PostgresLibrary.cs: changed the hard-coded PostgreSQL oid type int's to using an enum. Also, added PostgreSQL bpchar (character) type. * Test/TestSqlDataReader.cs: updated test to include new bpchar PostgreSQL type 2002-05-03 Rodrigo Moya * System.Data.SqlTypes/SqlBinary.cs: * System.Data.SqlTypes/SqlBoolean.cs: * System.Data.SqlTypes/SqlInt32.cs: * System.Data.SqlTypes/SqlString.cs: more implementation, by Tim Coleman . 2002-05-03 Daniel Morgan * Test/TestExecuteScalar.cs: added test for method ExecuteScalar in class SqlCommand. * System.Data/DataColumnCollection.cs - it should inherit properties from base InternalDataCollectionBase and use them instead of overriding them, such as, List. * System.Data/DataColumn.cs * System.Data/DataTable.cs: tweaks to retrieve meta data from the database * System.Data.SqlClient/PostgresLibrary.cs - added method OidToType to convert PostgreSQL oid type to System.Type. Renamed method OidTypeToSystem to ConvertPgTypeToSystem for converting the data value from a PostgreSQL type to a .NET System type. * System.Data.SqlClient/SqlCommand.cs: implemented method ExecuteReader which returns a SqlDataReader for a light forward only read only result set. It works on types int4 ==> Int32 and varchar ==> String. Other types will come later. * System.Data.SqlClient/SqlConnection.cs: added comment * System.Data.SqlClient/SqlDataReader.cs: implemented class. It works, but still lots to do. * Test/ReadPostgresData.cs: stuff * Test/TestSqlDataReader.cs: updated test for SqlDataReader to display meta data and the data 2002-05-03 Duncan Mak * TODO: Took out all the Exceptions. They should be all done now. * System.Data/ConstraintException.cs: * System.Data/DBConcurrencyException.cs: * System.Data/DataException.cs: * System.Data/DeletedRowInaccessibleException.cs: * System.Data/DuplicateNameException.cs: * System.Data/EvaluateException.cs: * System.Data/InRowChangingEventException.cs: * System.Data/InvalidConstraintException.cs: * System.Data/InvalidExpressionException.cs: * System.Data/MissingPrimaryKeyException.cs: * System.Data/NoNullAllowedException.cs: * System.Data/ReadOnlyException.cs: * System.Data/RowNotInTableException.cs: * System.Data/StrongTypingException.cs: * System.Data/SyntaxErrorException.cs: * System.Data/TypeDataSetGeneratorException.cs: * System.Data/VersionNotFoundException.cs: Added to CVS. * System.Data.SqlTypes/SqlNullValueException.cs: * System.Data.SqlTypes/SqlTruncateException.cs: * System.Data.SqlTypes/SqlTypeException.cs: Added to CVS. 2002-05-02 Rodrigo Moya * System.Data/DataViewSettingCollection.cs: implemented. * System.Data/DataRowView.cs: new stubs. * System.Data.SqlTypes/SqlByte.cs: * System.Data.SqlTypes/SqlDateTime.cs: * System.Data.SqlTypes/SqlDecimal.cs: * System.Data.SqlTypes/SqlDouble.cs: * System.Data.SqlTypes/SqlGuid.cs: * System.Data.SqlTypes/SqlInt16.cs: * System.Data.SqlTypes/SqlInt64.cs: * System.Data.SqlTypes/SqlMoney.cs: * System.Data.SqlTypes/SqlSingle.cs: new stubs, contributed by Tim Coleman * System.Data.build: excluded newly-added files. 2002-05-02 Daniel Morgan * System.Data.SqlClient/PostgresLibrary.cs: included new internal class that will be a helper class in using PostgreSQL. PostgresLibrary is used for the pinvoke methods to the PostgreSQL Client native C library libpq while the class PostgresHelper is used for wrapper or helper methods. It currently only has one static method OidTypeToSystem in converting PostgreSQL types to .NET System.s, such as, a PostgreSQL int8 becomes a .NET System.Int64. Only a few types have been added, such as, int2, int4, int8, varchar, text, bool, and char. Other types will come later. * System.Data.SqlClient/SqlCommand.cs: implemented method ExecuteScalar which allows us to do aggregate functions, such as, count, avg, min, max, and sum. We also are able to retrieve the result, convert it to the .NET type as an object. The user of the returned object must explicitly cast. * Test/ReadPostgresData.cs: updated sample to help us learn to retrieve data in System.Data.SqlClient classes 2002-05-01 Daniel Morgan * System.Data.build: added /nowarn: nnnn arguments so you will not get a ton of warnings. The warnings being excluded are: 1595, 0067, 0109, 0169, and 0649 2002-05-01 Daniel Morgan * System.Data.build: modified to exclude more files from the build 2002-05-01 Rodrigo Moya * System.Data.SqlClient/SqlClientPermission.cs: added missing 'using's. * System.Data/MergeFailedEventArgs.cs: new class, contributed by John Dugaw . * System.Data.build: excluded new files from build. 2002-04-29 Daniel Morgan * Test/ReadPostgresData.cs: added - Uses the PostgresLibrary to retrieve a recordset. This is not meant to be used in Production, but as a learning aid in coding class System.Data.SqlClient.SqlDataReader. This sample does work. * Test/TestSqlDataReader.cs: added - used to test SqlDataReader (does not work yet) Forgot to add to ChangeLog on last commit. 2002-04-28 Rodrigo Moya * System.Data/DataViewSetting.cs: new class. 2002-04-28 Rodrigo Moya * System.Data/DataViewManager.cs: new class. * System.Data.SqlTypes/INullable.cs: properties for interfaces don't have implementation. * System.Data.SqlTypes/SqlInt32.cs: * System.Data.SqlTypes/SqlString.cs: * System.Data.SqlTypes/SqlBoolean.cs: removed destructor, since these are strctures. * System.Data.SqlClient/SqlClientPermissionAttribute.cs: added missing 'using's. 2002-04-28 Rodrigo Moya * System.Data/DataTableRelationCollection.cs: use 'new' keyword for correctly hiding parent class' members. (AddRange): use 'override' keyword on overriden method. (Clear): likewise. (Contains): likewise. (IndexOf): likewise. (OnCollectionChanged): likewise. (OnCollectionChanging): likewise. (RemoveCore): likewise. * System.Data/DataColumnCollection.cs: use 'new' keyword. * System.Data/DataSet.cs: added missing 'using's. 2002-04-28 Rodrigo Moya * System.Data/DataSet.cs: * System.Data/DataTableCollection.cs: * System.Data/DataView.cs: compilation fixes on Linux. 2002-04-28 Daniel Morgan * System.Data/DataRelation.cs * System.Data/ForeignKeyConstraint.cs * System.Data/UniqueConstraint.cs: added more stubs * System.Data/DataTableRelationCollection.cs: added back to cvs and modified for compile errors. DataRelationCollection is an abstract class and there must be a class that implements for DataTable/DataSet. DataTableRelationCollection was changed to an internal class. * System.Data.build: modified - new files added also wanted to include files/classes in the build so we can get a compilable forward read only result set. It compiles now using csc/nant with warnings, but this is a start for adding functionality for the result set. Classes associated with/and DataSet are still excluded. * TODO: modified - updated to do list for System.Data * System.Data/Constraint.cs * System.Data/ConstraintCollection.cs * System.Data/DataRelationCollection.cs * System.Data/DataRow.cs * System.Data/DataRowChangeEventArgs.cs * System.Data/DataRowCollection.cs * System.Data/DataTable.cs * System.Data/DataTableCollection.cs * System.Data/InternalDataCollectionBase.cs * System.Data/PropertyCollection.cs: modified - changes to compile SqlDataReader/DataTable and dependencies * System.Data/IDbCommand.cs * System.Data.SqlClient/SqlCommand.cs: modified - un-commented overloaded methods ExecuteReader which returns a SqlDataReader 2002-04-28 Rodrigo Moya * System.Data/DataTableCollection.cs: more implementation. (Count): added 'override' keyword, as pointer out by Martin. * System.Data.Common/DataColumnMappingCollection.cs (Add, AddRange): only call Array.Copy when there is really stuff to be copied. (CopyTo): don't create the temporary array, it's not needed. * System.Data.build: excluded newly added file from build. 2002-04-27 Rodrigo Moya * System.Data/DataTableRelationCollection.cs: removed, it's not on MS SDK documentation. * System.Data/DataTableCollection.cs: new class. 2002-04-27 Daniel Morgan * System.Data/DataRowChangeEventArgs.cs * System.Data/DataRowCollection.cs * System.Data/DataView.cs * System.Data/PropertyCollection.cs: added new stubs * System.Data.build: modified - added new files to exclude from build * TODO: modified - removed files from TODO list that were stubbed above * System.Data/DataColumn.cs * System.Data/DataRow.cs: modified - various tweaks and added internal method SetTable to set the reference to a DataTable * System.Data/DataSet.cs: modified - class was not completely stubbed. * System.Data/DataTable.cs: modified - temporarily commented DataSet and DataView references - trying to compile a SqlDataReader, DataTable, and dependencies for a forward read-only result set. SqlDataAdapter, DataSet, and DataView will come later once we can get a forward read only result set working. * System.Data/IDataRecord.cs: modified - source code lines should not be > 80 * System.Data/InternalDataCollectionBase.cs: modified - started implementing this base class for collection of data rows, columns, tables, relations, and constraints * System.Data.SqlClient/SqlException.cs: modified - call base(message) so a unhandled exception displays the message of a SQL error instead of the default SystemException message * Test/TestSqlException.cs: modified - handle the rollback properly for a SqlException on a failure to connect 2002-04-23 Daniel Morgan * System.Data.build: modified - added new files to exclude from build * System.Data/Constraint.cs * System.Data/ConstraintCollection.cs * System.Data/InternalDataCollectionBase.cs: added - stubs which are needed to build DataTable.cs * TODO: modified - added more classes TODO and added more stuff TODO, such as, create script to create test database monotestdb for testing classes in System.Data 2002-04-23 Rodrigo Moya * System.Data.Common/DataAdapter.cs: * System.Data.Common/DataColumnMappingCollection.cs: * System.Data.Common/DataTableMappingCollection.cs: * System.Data.Common/DbDataPermission.cs: * System.Data.Common/DbDataPermissionAttribute.cs: some compilation errors fixed. 2002-04-23 Daniel Morgan * TODO: modified - added classes TODO, and a poor attempt at System.Data plan 2002-04-23 Daniel Morgan * ChangeLog: modified - put tabs where they belong * System.Data.SqlClient/SqlDataReader.cs * System.Data/DataColumn.cs: modified - compile errors trying to compile SqlDataAdapter and dependencies 2002-04-23 Daniel Morgan * System.Data.SqlTypes/SqlBoolean.cs * System.Data.SqlTypes/SqlCompareOptions.cs * System.Data.SqlTypes/SqlInt32.cs * System.Data.SqlTypes/SqlString.cs: added - new stubs * System.Data/DataTable.cs * System.Data.SqlClient/SqlCommand.cs * System.Data.SqlClient/SqlConnection.cs * System.Data.SqlClient/SqlError.cs * System.Data.SqlClient/SqlTransaction.cs: modified - misc. tweaks * System.Data.SqlClient/SqlException.cs: modified - missing Message on indexer for Message property 2002-04-21 Daniel Morgan * System.Data.SqlClient/SqlCommand.cs: modified - to compile using mcs. This problem is returning a stronger type in csc vs. msc * System.Data.SqlClient/SqlConnection.cs: modified - msc can not do a using PGconn = IntPtr; and then declare with PGconn pgConn = IntPtr.Zero; Thiw works under csc though. Had to comment using and changed declaration to IntPtr pgConn = IntPtr.Zero; Also, got rid of compile warnings for hostaddr and port. * System.Data.SqlClient/SqlErrorCollection.cs: modified - got rid of compile warnings. Commented MonoTODO attribute because mcs doesn't seem to work with C# array property indexer (Item) this[int index] * System.Data.SqlClient/SqlParameterCollection.cs: modified - commented MonoTODO attribute for indexer for mcs compiling * Test/TestSqlIsolationLevel.cs: * Test/TestSqlInsert.cs: * Test/TestSqlException.cs: modified - removed extra ExecuteNonQuery which caused two inserted rows 2002-04-20 Daniel Morgan * System.Data/StateChangeEventArgs.cs - added needed to compile System.Data.dll with mcs. 2002-04-20 Daniel Morgan * System.Data.OleDb: added directory - for OleDb database provider classes * System.Data.SqlClient/SqlClientPermission.cs * System.Data.SqlClient/SqlClientPermissionAttribute.cs * System.Data.SqlClient/SqlCommandBuilder.cs * System.Data.SqlClient/SqlInfoMessageEventHandler.cs * System.Data.SqlClient/SqlRowUpdatedEventArgs.cs * System.Data.SqlClient/SqlRowUpdatedEventHandler.cs * System.Data.SqlClient/SqlRowUpdatingEventArgs.cs * System.Data.SqlClient/SqlRowUpdatingEventHandler.cs * Test/TestSqlException.cs * Test/TestSqlIsolationLevel.cs: added - more tests * System.Data.build: modified - added new files - excludes these too * System.Data.SqlClient/PostgresLibrary.cs - modified - comment * System.Data.SqlClient/SqlConnection.cs * System.Data.SqlClient/SqlCommand.cs * System.Data.SqlClient/SqlTransaction.cs * System.Data.SqlClient/SqlException.cs * System.Data.SqlClient/SqlErrorCollection.cs * System.Data.SqlClient/SqlError.cs: modified - transaction and exception/error handling. SqlConnection(connectionString) constructor should not automatically connect. * System.Data.SqlClient/SqlDataReader.cs * System.Data.SqlClient/SqlDataAdapter.cs * System.Data.SqlClient/SqlParameter.cs * System.Data.SqlClient/SqlParameterCollection.cs: modified - added using System.ComponentModel; * Test/TestSqlInsert.cs: modified - to use transaction 2002-04-17 Rodrigo Moya * System.Data/DataRow.cs: new skeletons. * System.Data.Common/DataAdapter.cs: * System.Data.Common/DataColumnMapping.cs: * System.Data.Common/DataColumnMappingCollection.cs: * System.Data.Common/DataTableMapping.cs: * System.Data.Common/DataTableMappingCollection.cs: * System.Data.Common/DbDataAdapter.cs: * System.Data.Common/RowUpdatedEventArgs.cs: * System.Data.SqlClient/SqlDataAdapter.cs: * System.Data.SqlClient/SqlInfoMessageEventArgs.cs: compilation fixes for Linux. * System.Data.Common/DbDataRecord.cs: * System.Data.Common/DbEnumerator.cs: removed MS implementation internal classes. 2002-04-17 Daniel Morgan * Test/TestSqlInsert.cs: modified - do a SQL DELETE before SQL INSERT of row so you can use this test over and over. * System.Data.SqlClient/SqlTransaction.cs: modified - default IsolationLevel for PostgreSQL is ReadCommitted. However, PostgreSQL allows Serializable as well. (Thanks to Gonzalo for that!) * System.Data.SqlClient/SqlConnection.cs: modified * System.Data.SqlClient/SqlCommand.cs: modified * System.Data.SqlClient/SqlTransaction.cs: modified - got transactions working; however, we still need to implement SQL errors and exceptions to properly handle transactions. Also, added status and error message support from the PostgreSQL database. Currently, this does a Console.WriteLine() to display the status and error messages, but this is a TODO for SQL errors and exceptions. * System.Data/TODOAttribute.cs: added - needed MonoTODO attribute for System.Data.dll assembly * System.Data/IDbCommand.cs: modified - commented overloaded method ExecuteReader so System.Data.SqlClient.SqlCommand can compile * System.Data/IDbCommand.cs: modified * System.Data/IDbConnection.cs: modified - added using System; * System.Data/IDataParameter.cs * System.Data.build: modified - build classes in System.Data.SqlClient and exclude others in System.Data * System.Data.SqlClient/PostgresLibrary.cs: modified - change parameter data type from IntPtr to enum ExecStatusType * ChangeLog: modified - corrected previous entries in log 2002-04-16 Rodrigo Moya * System.Data.Common/DataColumnMappingCollection.cs: added basic implementation. Still missing some stuff. 2002-04-16 Daniel Morgan * System.Data.SqlClient/SqlConnection.cs: modified - got to compile, run, and connect to PostgreSQL database * System.Data.SqlClient/SqlCommand.cs: modified - got to compile, run, and execute a SQL INSERT command which successfully inserted a row into the PostgreSQL database * System.Data.SqlClient/SqlTransaction.cs: modified * System.Data.SqlClient/SqlParameter.cs: modified * System.Data.SqlClient/SqlParameterCollection.cs: modified * System.Data.SqlClient/SqlError.cs: modified * System.Data.SqlClient/SqlErrorCollection.cs: modified * System.Data.SqlClient/SqlException.cs: modified * System.Data.SqlClient/PostgresLibrary.cs: modified - to compile * System.Data.SqlClient/SqlAdapter: modified * System.Data.SqlClient/SqlReader: modified - add more stubs 2002-04-16 Daniel Morgan * Test/TestSqlInsert.cs: added 2002-04-15 Daniel Morgan * System.Data.SqlClient/SqlInfoMessageEventArgs.cs: added - using in class SqlConnecition * System.Data.SqlClient/SqlErrorCollection.cs: added * System.Data.SqlClient/SqlErrors.cs: removed - no such class SqlErrors 2002-04-15 Christopher Podurgiel * System.Data.IDbDataParameter: Added Interface to IDataParameter. * System.Data.IDbTransaction: Added Interface to IDisposable. * System.Data.IDbCommand: Fixed Capitalization of class name. * System.Data.IDbConnection: Fixed Capitalization of class name. 2002-04-15 Rodrigo Moya * System.Data.Common/DbDataPermissionAttribute.cs: * System.Data.Common/DataAdapter.cs: * System.Data.Common/DataColumnMapping.cs: * System.Data.Common/DbDataPermission.cs: added some implementation. 2002-04-15 Rodrigo Moya * System.Data.SqlClient/SqlConnection.cs: fixed constructor chaining syntax, as pointed out by Levent Camlibel. 2002-04-14 Rodrigo Moya * System.Data.SqlTypes/SqlBinary.cs: * System.Data.SqlTypes/INullable.cs: new skeletons. 2002-04-14 Daniel Morgan * System.Data.SqlClient/PostgresLibrary.cs: new internal class, which contains all calls the the PostgreSQL client library, to be used everywhere in System.Data.SqlClient. 2002-03-30 Rodrigo Moya * System.Data.SqlClient/SqlConnection.cs: implemented basic constructors. * System.Data.SqlTypes/SqlNullValueException.cs: new skeletons. 2002-03-29 Rodrigo Moya * System.Data.Common/DbDataRecord.cs: * System.Data.Common/DbEnumerator.cs: * System.Data.Common/RowUpdatedEventArgs.cs: * System.Data.Common/RowUpdatingEventArgs.cs: * System.Data.Common/DbDataPermissionAttribute.cs: new skeletons. 2002-03-28 Rodrigo Moya * System.Data.Common/DataTableMappingCollection.cs: * System.Data.Common/DbDataAdapter.cs: * System.Data.Common/DbDataPermission.cs: * System.Data.Common/DataTableMapping.cs: new skeletons. * System.Data.SqlClient/SqlDataAdapter.cs: * System.Data.SqlClient/SqlDataReader.cs: * System.Data.SqlClient/SqlErrors.cs: * System.Data.SqlClient/SqlError.cs: * System.Data.SqlClient/SqlException.cs: * System.Data.SqlClient/SqlParameter.cs: * System.Data.SqlClient/SqlParameterCollection.cs: * System.Data.SqlClient/SqlTransaction.cs: * System.Data.SqlClient/SqlCommand.cs: fixed skeletons. 2002-03-27 Rodrigo Moya * System.Data.Common/DataColumnMapping.cs: * System.Data.Common/DataColumnMappingCollection.cs: * System.Data.Common/DataAdapter.cs: created skeletons. * System.Data.build: exclude new directories from build. 2002-03-27 Rodrigo Moya * System.Data.SqlClient/SqlTransaction.cs: started implementation. * System.Data.SqlClient/SqlConnection.cs (BeginTransaction): implemented (2 methods). 2002-03-24 Duncan Mak * System.Data.build: Excluded System.Data.SqlClient from the build. The stubs are incomplete and they are stopping the build. * System.Data.SqlClient/SqlCommand.cs: Replaced 'implements' with ':'. 2002-03-24 Rodrigo Moya * System.Data.SqlClient/*: added skeletons for the SQL managed provider for ADO.Net, to be based initially in PostgreSQL. 2002-03-15 Christopher Podurgiel Changed the Namespace on some Enums from mono.System.Data to System.Data 2002-03-01 Christopher Podurgiel * DataColumnCollection.cs : When an existing DataColumn is added, will now Assign a default name if the ColumnName is null. * DataSet.cs : Added * DataTable.cs : Added * DataRelationCollection.cs : Added * DataTableRelationCollection.cs : Added * DataColumn : Added 2002-02-11 Christopher Podurgiel * DataColumnChangeEventArgs.cs : Added * DataColumnCollection.cs : Added 2002-02-10 Christopher Podurgiel * Removed *.cs from System.Data as the correct files are in mcs/class/System.Data/System.Data * Updated all Enums, Interfaces, and Delegates in System.Data