1 2008-05-27 Gert Driesen <drieseng@users.sourceforge.net>
3 * SqlConnection.cs: Added support for '.' as alias for localhost.
4 Improve exception message when TCP/IP protocol is not enabled.
6 2008-05-17 Gert Driesen <drieseng@users.sourceforge.net>
8 * SqlDataReader.cs (GetInt64): Removed workaround for TDS 7.0 handling
9 of bigint column type as this is handled in Mono.Data.Tds.
11 2008-05-14 Marek Habersack <mhabersack@novell.com>
13 * SqlConnection.cs: added support for USER INSTANCE keyword in the
16 2008-04-22 Veerapuram Varadhan <vvaradhan@novell.com>
19 * SqlCommand.cs: Handle exceptions sanely and do not close
20 connection on TdsTimeoutException.
22 2008-04-21 Gert Driesen <drieseng@users.sourceforge.net>
24 * SqlBulkCopyColumnMappingCollection.cs: Changed argument names to
25 match MS. Code formatting.
26 * SqlCommand.cs: Changed argument names to match MS. Code formatting.
27 Do not include explicit IDbCommand implementation on 2.0 profile.
28 * SqlCommandBuilder.cs: Changed argument names to match MS. Code
30 * SqlDataReader.cs: Changed argument names to match MS. Code
32 * SqlParameterCollection.cs: Do not include IList, ICollection and
33 IDataParameterCollection explicit interface implementation on 2.0
34 profile. Code formatting.
35 * SqlConnection.cs: Changed argument names to match MS.
36 * SqlDataAdapter.cs: Changed argument names to match MS.
37 * SqlTransaction.cs: Do not include explicit interface implementation
38 of IDbTransaction.Connection on 2.0 profile. Code formatting.
40 2008-04-19 Robert Jordan <robertj@gmx.net>
42 * SqlParameterCollection.cs (AddRange(SqlParameter[])):
43 Fix endless recursion.
45 2008-04-08 Marek Habersack <mhabersack@novell.com>
47 * SqlConnection.cs: TCP port discovery via UDP port 1434 should
48 honor the timeout specified in the connection string (or the
49 default one). In some environments 100 microseconds might not be
50 enough to discover the port.
52 2008-04-01 Marek Habersack <mhabersack@novell.com>
54 * SqlParameter.cs: ConvertToFrameworkType must handle empty
55 strings gracefully - a DBNull.Value must be returned in this
58 * SqlCommand.cs: DeriveParameters should split the stored
59 procedure name into the schema name and procedure name before
60 querying its parameters.
62 2008-03-03 Ankit Jain <jankit@novell.com>
64 * SqlClientMetaDataCollectionNames.cs: Set the field values.
66 2007-10-21 Gert Driesen <drieseng@users.sourceforge.net>
68 * SqlCommand.cs: Use ExceptionHelper.CheckEnumValue for enum checks.
70 2007-10-20 Gert Driesen <drieseng@users.sourceforge.net>
72 * SqlCommand.cs: Added constant for default CommandTimeout, instead
73 of using a magic number. Avoid unnecessary initialization. Fixed
74 default value for DesignTimeVisible. Return zero-length string if
75 CommandText is null. Use ExceptionHelper.InvalidEnumValueException
76 to avoid code duplication. Spaces to tabs and code formatting.
77 * SqlConnection.cs: Use different default package size on 2.0 profile.
78 Added constants for default values, instead of using magic numbers.
79 Avoid unnecessary initialization. In PacketSize, return default or
80 configured packet size when connection is not open. Use
81 ExceptionHelper.ConnectionClosed instead of local method. Removed
82 use of some hardcoded values in SetDefaultConnectionParameters, and
83 use Environment.MachineName as default WorkstationId instead of
84 DNS host name. Code formatting.
85 * SqlDataAdapter.cs: In default ctor, set SelectCommand to null.
86 Avoid unnecessary initializations. Use direct assignment in
87 IDbDataAdapter implementation. Fixed exception message for negative
88 UpdateBatchSize. In Dispose override, make sure to invoke base
91 2007-10-19 Gert Driesen <drieseng@users.sourceforge.net>
93 * SqlTransaction.cs: Clear connection in commit. In IsolationLevel,
94 throw IOE if transaction is no longer open.
96 2007-10-19 Gert Driesen <drieseng@users.sourceforge.net>
98 * SqlTransaction.cs: Avoid unnecessary initialization. Remove
99 isRolledBack since its essentially the same as isOpen. Use
100 ExceptionHelper.TransactionNotUsable instead of duplicating code.
101 On 2.0 profile, ignore call to Rollback when transaction was already
104 2007-10-18 Gert Driesen <drieseng@users.sourceforge.net>
106 * SqlConnection.cs: Avoid unnecessary initialization. Use string.Empty
107 for assigning zero-length string, and use String.Length to check for
108 zero-length string. Added support for IsolationLevel.Snapshot.
109 Added StructuredTypeMembers schema collection and restrictions. Fixed
110 table name for MetaDataCollections collection. Implemented
111 DataSourceInformation collection. Added missing data types (probably
112 introduced in 2.0 SP1). In GetSchema, throw InvalidOperationException
113 if connection is closed and throw NotImplementedException for
114 StructuredTypeMembers collection.
116 2007-10-18 Gert Driesen <drieseng@users.sourceforge.net>
118 * SqlConnection.cs: On 1.0 profile, IsolationLevel.Unspecified is
119 not valid. On 2.0 profile, when IsolationLevel.Unspecified is passed
120 make sure to also set SqlTransaction.IsolationLevel to
121 ReadCommitted. Modified exceptions to match MS.
123 2007-10-17 Nagappan <anagappan@novell.com>
125 * SqlParameter.cs (ConvertToFrameworkType): Added SqlDbType.Image.
127 2007-10-17 Nagappan <anagappan@novell.com>
129 * SqlConnection.cs: BeginTransaction does not handle
130 IsolationLevel.Unspecified, so the default is set as ReadCommited.
131 Thanks to Jerome Haltom <wasabi@larvalstage.net> for this patch. Fixes
133 * SqlTransaction.cs: If transaction count is greater then 0 then roll back.
134 Thanks to Jerome Haltom <wasabi@larvalstage.net> for this patch. Fixes
137 2007-10-15 Gert Driesen <drieseng@users.sourceforge.net>
139 * SqlException.cs: Do not hide Message on 2.0 profile. Fixes bug
142 2007-10-08 Marek Safar <marek.safar@gmail.com>
144 * SqlParameterCollection.cs (SetParameter): Fixed missing cast.
146 2007-09-27 Nagappan A <anagappan@novell.com>
148 * SqlConnection.cs: Added MonoTODO appropriately.
150 2007-09-26 Nagappan A <anagappan@novell.com>
152 * SqlCommandBuilder.cs: Code alignment.
154 2007-09-25 Nagappan A <anagappan@novell.com>
156 * SqlInitialCatalogConverter.cs, SqlDataSourceConverter.cs:
157 NetworkLibraryConverter.cs: Added new files.
159 * SqlParameter.cs: 2.0 attribute changes.
161 * SqlDataAdapter.cs: 2.0 attribute changes.
163 * SqlConnectionStringBuilder.cs: 2.0 attribute changes.
165 * SqlConnection.cs (ClearAllPools, ClearPool): Implemented 2.0
166 APIs, other 2.0 attribute changes.
168 * SqlCommandBuilder.cs (GetSchemaTable, InitializeCommand):
169 Implemented 2.0 APIs, other 2.0 attribute changes.
171 * SqlBulkCopyColumnMappingCollection.cs: Added constructor, 2.0
172 API compatibility changes.
174 * SqlException.cs: 2.0 attribute changes.
176 2007-08-13 Nagappan A <anagappan@novell.com>
178 * SqlConnection.cs (ConnectionString): 2.0 compatibility changes.
180 * SqlDataReader.cs (IsCommandBehavior): Fixed spelling mistake of
182 (Dispose): 2.0 compatibility changes.
184 * SqlBulkCopy.cs (SqlRowsCopied): Fixed spelling mistake of the
186 (RowsCopied): Generates event when NotifyAfter is set.
188 * SqlCommandBuilder.cs (Dispose, RefreshSchema): 2.0 compatibility
191 * SqlClientFactory.cs (CreateDataSourceEnumerator): Removed bogus
194 * SqlException.cs (Message): 2.0 compatibility changes.
196 2007-08-06 Nagappan A <anagappan@novell.com>
198 * SqlCommand.cs, SqlDataReader.cs, SqlConnection.cs: When the
199 server resets the connection, now the client code also disconnects
200 the session and remove the instance from pool. Fixes bug # 81933.
202 2007-07-31 Nagappan A <anagappan@novell.com>
204 * SqlCommand.cs (Transaction, Connection): IDbCommand Transaction
205 and Connection can be set to null. Fixes bug 82189.
207 2007-07-23 Nagappan A <anagappan@novell.com>
209 * SqlCommandBuilder.cs (ApplyParameterInfo, GetParameterName):
210 (GetParameterPlaceholder): Implemented 2.0 missing APIs.
212 2007-07-22 Nagappan A <anagappan@novell.com>
214 * SqlBulkCopy.cs (NotifyAfter): Implemented 2.0 property.
215 (GetColumnMetaData, GenerateColumnMetaData):
216 (ValidateColumnMapping): Implemented private method's to generate
217 and validate SqlBulkCopy headers.
218 (BulkCopyToServer): Private method to actually do the bulk copy
220 (WriteToServer): Implemented 2.0 missing overloaded methods.
221 (IDisposable.Dispose): Implemented 2.0 missing method.
223 * SqlBulkCopyColumnMappingCollection.cs (Add, CopyTo): Implemented
225 (Item): Implemented missing property.
227 * SqlBulkCopyColumnMapping.cs: Modified the implementation of
228 Constructors to use property.
230 * SqlDataReader.cs (GetSqlXml, IsCommandBehaviour): Added 2.0
232 (Connection): Added missing property.
234 * SqlParameter.cs (SetSqlDbType, ConvertToFrameworkType): Modified
235 method as internal from private.
237 * SqlConnection.cs: Fixed 2.0 missing feature.
239 * SqlException.cs: Fixed 2.0 missing feature.
241 * SqlClientPermission.cs: Fixed 2.0 missing feature.
243 2007-07-01 Gert Driesen <drieseng@users.sourceforge.net>
245 * ISqlNotificationReceiver.cs: Removed.
246 * SqlClientFactory.cs: Use SqlDataSourceEnumerator from S.D.Sql and
247 marked method todo. Avoid unnessary casts. Code formatting.
248 * SqlCommand.cs: Explicit interface implementation of IDbCommand not
249 necessary on 2.0 profile. Fixes API mismatches. Avoid unnecessary
250 casts. Code formatting.
251 * SqlConnection.cs: Also use RecommendAsConfigurable instead of
252 SettingBindableAttribute on 2.0. Use StateChange event from base class
253 on 2.0. Only explicitly implement IDbConnection methods on 1.0, since
254 these are implemented by base class on 2.0 profile. Removed extra
255 explicit implementation of IDisposable since the base class implements
256 this. Code formatting.
257 * SqlDataAdapter.cs: Dispose (bool) override not necessary on 2.0
258 profile. Stubbed ICloneable.Clone. Fixes API mismatches.
259 * SqlDataReader.cs: On 2.0, IDisposable.Dispose is implemented by
260 DbDataReader. Only 1.0 profile, explicitly implemented IEnumerable
261 GetEnumerator. Code formatting.
262 * SqlDataSourceEnumerator.cs: Removed.
263 * SQLDebugging.cs: Marked sealed on 2.0. Code formatting.
264 * SqlNotificationAuthType.cs: Removed.
265 * SqlNotificationInfo.cs: Added missing fields. Code formatting.
266 * SqlNotificationSource.cs: Added missing fields. Code formatting.
267 * SqlNotificationTransports.cs: Removed.
268 * SqlNotificationType.cs: Added missing Unknown field. Code formatting.
269 * SqlParameter.cs: Removed Browsable and EditorBrowsable attributes
270 from Precision and Scale. Fixes API mismatches. Code formatting fixes.
271 * SqlTransaction.cs: On 2.0 profile, Dispose method is exposed by
272 base class. Fixes API mismatches. Code formatting fixes.
274 2007-06-21 Nagappan A <anagappan@novell.com>
276 * SqlConnection.cs: Fixed compiler warning.
278 2007-06-11 Nagappan A <anagappan@novell.com>
280 * SqlConnection.cs (ParseDataSource): Adds tcp support in
281 connection string. Fixes bug # 80975.
283 * SqlCommand.cs (Dispose): On disposing the command object, don't
284 dispose connection and transaction.
286 2007-06-06 Nagappan A <anagappan@novell.com>
288 * SqlCommand.cs, SqlConnectionStringBuilder.cs, SqlConnection.cs:
289 Fixed 1.0 and 2.0 extras, errors as stated in class status page.
291 * SqlDataAdapter.cs, SqlParameter.cs:Fixed 1.0 and 2.0 extras,
292 errors as stated in class status page.
294 * SqlBulkCopyColumnMappingCollection.cs: Fixed 1.0 and 2.0 extras,
295 errors as stated in class status page.
297 2007-05-30 Nagappan A <anagappan@novell.com>
299 * SqlParameter.cs (SqlParameter): Updated constructor to use the
300 new TDS RPC implementation.
301 Fixed missing attributes.
302 (SetDbType): Added new case for sql_variant type.
303 (ConvertToFrameworkType): Implemented new private method to
304 convert the data type to framework type.
306 * SqlParameterCollection.cs: Fixed missing attributes and
307 implemented missing methods.
309 * SqlConnection.cs: Fixed missing attributes.
311 * SqlConnectionStringBuilder.cs: Certain attributes are missing or
312 its value or they are not appropriate. Fixed them.
314 * SqlDataReader.cs (GetData): Method is available only under 1.0
317 * SqlCommandBuilder.cs: Certain attributes are available only
318 under 2.0 profile, so moved them inside ifdef.
320 * SqlCommand.cs: Certain attributes are available only under 2.0
321 profile, so moved them inside ifdef.
323 * SqlBulkCopy.cs: Added new stubs.
325 * SqlBulkCopyColumnMappingCollection.cs: Added new stubs.
327 2007-05-29 Nagappan A <anagappan@novell.com>
329 * SqlCommand.cs (Dispose): Command.Dispose closing
330 connection. Fixes bug # 81710. Thanks to AMC <amc1999@gmail.com>
333 2007-05-10 Nagappan A <anagappan@novell.com>
335 * SqlClientMetaDataCollectionNames.cs: Fixed incorrect constructor
338 * SqlConnectionStringBuilder.cs: Fixed missing attributes.
340 2007-05-09 Igor Zelmanovich <igorz@mainsoft.com>
342 * SqlConnectionStringBuilder.cs: added MonoNotSupported attribute.
344 2007-04-03 Amit Biswas <amit@amitbiswas.com>
346 * SqlDataReader.cs (GetSqlBytes, GetProviderSpecificFieldType)
347 (GetProviderSpecificValue, GetProviderSpecificValues): Implemented
350 * SqlParameter.cs (XmlSchemaCollectionDatabase): Implemented missing property
351 (XmlSchemaCollectionName): Implemented missing property
352 (XmlSchemaCollectionOwningSchema): Implemented missing property
353 (SourceColumnNullMapping): Existing implementation was not correct, Replaced the implementation
354 (.ctor): Implemented mising constructor new in .net 2.0
356 * SqlErrorCollection.cs (CopyTo): Implemented missing API
358 * SqlParameter.cs (InferSqlType): Corrected bug related to default values of
360 (ResetSqlDbType): Implemented missing API
361 (ResetDbType): Implemented missing API
363 2007-03-09 Amit Biswas <amit@amitbiswas.com>
365 * SqlParameterCollection.cs (CopyTo): Implemented missing API
367 2007-04-02 Nagappan A <anagappan@novell.com>
369 * SqlParameter.cs: Variable name fix.
371 2007-03-20 Nidhi Rawal <rawalnidhi_rawal@yahoo.com>
373 * SqlClientFactory.cs: Added two using directives.
374 (CreateConnectionStringBuilder): Implemented the method.
375 (CreatePermission): Implemented the property.
377 * SqlCommand.cs: Added one using directive.
378 (Clone): Implemented the method.
379 (Dispose): Implemented the method.
380 (BeginExecuteXmlReader): Implemented the method.
382 * SqlCommandBuilder.cs (QuoteIdentifier): Implemented the method.
383 (UnquoteIdentifier): Implemented the method.
385 * SqlConnection.cs (ChangePassword): Implemented the method.
387 2007-03-19 Nidhi Rawal <rawalnidhi_rawal@yahoo.com>
389 * SqlClientFactory.cs (CanCreateDataSourceEnumerator): Implemented
392 * SqlCommand.cs (Notification): Implemented the property.
393 (NotificationAutoEnlist): Implemented the property.
395 * SqlDataReader.cs (VisibleFieldCount): Implemented the property.
397 * SqlConnectionStringBuilder.cs (TrustServerCertificate): Implemented
399 (TypeSystemVersion): Implemented the property.
400 (UserInstance): Implemented the property.
401 (ContextConnection): Implemented the property.
403 * SqlConnection.cs (FireInfoMessageEventOnUserErrors): Implemented
405 (StatisticsEnabled): Implemented the property.
407 * SqlDataAdapter.cs (UpdateBatchSize): Implemented the property.
409 * SqlParameter.cs: Implemented one attribute.
411 2007-03-16 Andreia Gaita <avidigal@novell.com>
413 * SqlParameter.cs: Move isVariableSizeType flag to TdsMetaParameter
414 so that the TdsMetaParameter can validate itself for valid size / values.
415 * SqlCommand.cs (Execute): Call Validate on TdsMetaParameter.
417 2007-03-14 Nagappan A <anagappan@novell.com>
419 * SqlCommand.cs (CommandType): Exception type thrown in 2.0
420 profile is different than 1.0, ArgumentOutOfRangeException.
421 (Connection): Exception type thrown in 2.0 profile is different
422 than 1.0, ArgumentOutOfRangeException.
423 (Execute): If Size property is 0 for String and Binary type, then
424 throw InvalidOperationException.
425 (ValidateCommand): Exception type thrown in 2.0 profile is
426 different than 1.0, NullReferenceException.
428 2007-03-09 Nagappan A <anagappan@novell.com>
430 * SqlDataReader.cs: Fixed syntax erros reported in class status
433 2007-03-09 Andreia Gaita <avidigal@novell.com>
435 * SqlCommand.cs (ExecuteScalar): Fix returned value for
436 stored procedure calls to return the first column of the
437 first row produced by the proc.
439 2007-03-08 Nagappan A <anagappan@novell.com>
441 * SqlCommand.cs (CloseDataReader): Checks whether the SQL
442 connection is created or not.
444 2007-03-07 Andreia Gaita <avidigal@novell.com>
446 * SqlCommand.cs (ExecuteScalar): when calling stored procedures,
447 implement support for return of output values in the parameter
450 2007-02-16 Nidhi Rawal <rawalnidhi_rawal@yahoo.com>
452 * SqlParameter.cs (CompareInfo): Implemented the property
454 (LocaleId): Written the property LocaleId.
455 (SqlValue): Written the propert SqlValue.
457 2007-02-15 Nidhi Rawal <rawalnidhi_rawal@yahoo.com>
459 * SqlCommand.cs: Added some attributes which were not implemented
460 for .NET 2.0 and removed extra attribute which are not there in
463 * SqlCommandBuilder.cs: Added some attributes that were not
464 implemented for .NET 2.0.
466 * SqlParameterCollection.cs: Added some attributes that were
467 not implemented for .NET 2.0.
469 * SqlConnectionStringBuilder.cs: Added some attributes that
470 were not implemented for .NET 2.0.
472 * SqlConnection.cs: Added attribute that was not implemented
475 * SqlParameter.cs: Added some attributes which were not
476 implemented for .NET 2.0 and removed some extra attributes which
477 are not there in .NET 2.0
479 2007-02-09 Nagappan A <anagappan@novell.com>
481 * SqlConnection.cs (SetConnectionString): Fixes bug # 80712. A
484 2007-01-08 Nagappan A <anagappan@novell.com>
486 * SqlTransaction.cs (Dispose): Fixed compliation warning.
488 * SqlDataReader.cs (GetValues): Length of elements to be copied was
489 decided based on the argument array passed, which caused a bug, if
490 the length of given array is more than actual column values.
492 * SqlCommandBuilder.cs (CatalogSeparator, SchemaSeparator)
493 (CatalogLocation): Implemented missing properties.
494 (CreateDeleteCommand, CreateInsertCommand, CreateUpdateCommand):
495 Modified private methods to take bool flag. If true, add actual
496 parameter name instead of p1, p2 etc.
497 (CreateParameter): Added overloaded private method to create
498 parameter with the actual column name.
499 (GetUpdateCommand, GetDeleteCommand, GetInsertCommand):
500 Implemented missing overloaded methods.
501 (SetRowUpdatingHandler): Implemented missing protected method.
503 * SqlCommand.cs: Fixed compilation warning. Removed bogus
506 2006-12-05 Nagappan A <anagappan@novell.com>
508 * SqlCommand.cs (Execute): If sql2 length is greater than 0, then
509 add ';' and the respective sql2 string and then execute the
510 string. Fixes bug # 79880.
512 2006-08-30 Nagappan A <anagappan@novell.com>
514 * SqlConnection.cs: Implemented SqlConnection.GetSchema ().
516 2006-09-08 Konstantin Triger <kostat@mainsoft.com>
518 * SqlClientFactory.cs: implemented SqlClientFactory.CreateConnection ().
520 2006-07-13 Senganal T <tsenganal@novell.com>
522 * SqlClientFactory.cs SqlCommand.cs SqlConnectionFactory.cs
523 SqlClientPermission.cs SqlParameterCollection.cs SqlDataReader.cs
524 SqlConnection.cs SqlParameter.cs SqlTransaction.cs :
527 2006-05-31 Gert Driesen <drieseng@users.sourceforge.net>
529 * SqlConnection.cs: Removed extra destructor, as destructor on
530 System.ComponentModel.Component already calls Dispose.
531 * SqlParameter.cs: Removed explicit interface implementation of
532 IDataParameter.ParameterName.
534 2006-05-26 Senganal T <tsenganal@novell.com>
537 - InferSqlType : if value is null or DBNull.Value, retain the
538 current parameter type.
540 2006-04-18 Senganal T <tsenganal@novell.com>
543 - SetConnectionString : set the pareameter to default values
544 if connection string is empty or null
545 - Open : Raise InvalidOperationException if Connection String
547 - Dispose : Test exception not raised if dispose called on a
548 connection with empty connection string
550 slight modification of the patch by Jonel Rienton
552 2006-04-07 Senganal T <tsenganal@novell.com>
554 * SqlCommandBuilder.cs :
555 * CreateDeleteCommand ()
556 * CreateUpdateCommand ()
557 * CreateInsertCommand ()
558 - Changed the signature. Do not need DataRow parameter
559 as the Query generated is parametric.
560 - Correct the null-check term in the WhereClause, set the
561 correct properties for null-check parameter
563 - Modified the generated query to match the query as
564 generated by 2.0. We now ignore null-check in the
565 whereclause if the Column does not allow nulls.
566 * ctor () : Set QuotePrefix and QuoteSuffix for 2.0 profile
567 * GetUpdateCommand ()
568 * GetInsertCommand ()
569 * GetDeleteCommand ()
570 - Do not create new command everytime. Create only if
572 * RefreshSchema : Reset the commands.
574 2006-02-17 Chris Toshok <toshok@ximian.com>
576 * SqlCommand.cs, SqlCommandBuilder.cs, SqlConnection.cs,
577 SqlDataAdapter.cs: remove DataSysDescription attributes for >= 2.0
579 2006-02-17 Chris Toshok <toshok@ximian.com>
581 * SqlDataReader.cs: remove VisibleFieldCount property.
583 2006-02-10 Senganal T <tsenganal@novell.com>
585 - GetBytes : Read binary/blob/clob data sequentially when
586 CommandBehavior is set to SequentialAcccess
587 - GetChars : Read String/clob data sequentially when CommandBehavior
588 is set to SequentialAccess
590 - ExecuteReader : set SequentialAccess property on TDS
591 - CloseDataReader : Reset the command behavior
593 2006-01-27 Senganal T <tsenganal@novell.com>
595 * SqlCommandBuilder.cs :
596 - Modified CreateUpdateCommand,CreateDeleteCommand , to not include
597 column name in the query if its a expression col.
598 Also, modified the queries to match the generated queries in ms.net
600 - Modifed Prepare, to check if Parameter is explicitly initialized
602 - Added CheckIfInitialized : Checks if datatype is explicitly set and
603 non-zero size is set for variable datatypes.
605 - Added code for GetSqlBinary ()
606 - Fixed GetFieldCount ()
607 - Added more checks and exceptions.
609 2006-01-17 Senganal T <tsenganal@novell.com>
611 * SqlCommandBuilder.cs
612 - Modified CreateNewCommand () : Clean up any existing parameter list
613 before reusing the command.Fixes #77225
615 2005-11-24 Senganal T <tsenganal@novell.com>
618 - Modifications to get the correct Packet Size
620 2005-11-21 Senganal T <tsenganal@novell.com>
622 * SqlClientFactory.cs
623 * SqlCommandBuilder.cs
624 * SqlParameterCollection.cs
630 Added stubs and other changes for ADO.NET 2.0 compatibility
632 2005-11-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
634 * SqlConnection.cs: don't throw NotImplementedException when using
635 'PERSIST SECUTIRY INFO'. Just do nothing.
637 2005-10-27 Senganal T <tsenganal@novell.com>
642 Made changes so that the number of rows affected can be got directly from
643 Tds regardsless of the type of query.Fixes bug #75698
645 2005-10-19 Senganal T <tsenganal@novell.com>
647 * SqlConnection.cs (SetProperties) :
648 - Added support for AttachDBFileName
650 2005-10-19 Senganal T <tsenganal@novell.com>
652 * SqlException.cs (Constructor)
653 - Modified the constructor, so that the message parameter
654 of base class is not the same as that of the Exception message.
657 2005-09-24 Sureshkumar T <tsureshkumar@novell.com>
659 * SqlParameterCollection.cs (AddWithValue): added method. patch
660 from awaddell@fnfr.com (Andy Waddell).
662 2005-09-21 Senganal T <tsenganal@novell.com>
666 - Set the correct Default Values for Parameters.
667 - Added Argument Checks (where missing) for the Properties and
668 throw the correct exception on error.
669 - Modified SetDefaultParameters() to make sure that the parameters
670 are all reset to default values everytime it is called.
671 - Modified SetProperties() to take into account the order of the
672 keywords in the ConnectionString.
674 SqlConnection Fixes for the failing sqlserver connected-mode testcases
675 in ProviderTest/System.Data.SqlClient/SqlConnectionTest.cs
677 2005-09-21 Senganal T <tsenganal@novell.com>
679 * SqlTransaction.cs : Modifed the Rollback() method, so that
680 connection can be used for another transaction after the previous
681 transaction is rolled back. fixes bug 75904
683 2005-09-02 Umadevi S <sumadevi@novell.com>
685 * Removed SqlResultSet.cs file
687 2005-08-26 Sureshkumar T <tsureshkumar@novell.com>
689 * SqlConnection.cs (Open): enable sp_reset_connection.
691 2005-08-25 Sureshkumar T <tsureshkumar@novell.com>
693 * SqlCommandBuilder.cs: BuildInformation (): continue on columns
694 who don't have basetablename.
696 2005-08-12 Daniel Morgan <danielmorgan@verizon.net>
698 * SqlCommandBuilder.cs: update command builder based on
699 OdbcCommandBuilder latest changes to fix regression
702 2005-08-05 Sureshkumar T <tsureshkumar@novell.com>
704 * SqlCommandBuilder.cs: Set SourceVersion property to the created
705 parameters as it is used by the Adapter's Update method.
707 2005-07-22 Sureshkumar T <tsureshkumar@novell.com>
709 * SqlCommandBuilder.cs, SqlParameterCollection.cs,
710 SqlConnection.cs, SqlParameter.cs:
711 - updated attributes & attribute descriptions to match with
714 2005-07-16 Daniel Morgan <danielmorgan@verizon.net>
716 * SqlCommandBuilder.cs: CreateUpdateCommand should get the current value, not
717 the orginal value when setting one of the SET variables
719 2005-07-15 Sureshkumar T <tsureshkumar@novell.com>
721 * SqlCommandBuilder.cs:
722 - set_DataAdapter: unsubscribe event if DataAdapter is reset.
723 - CreateInsertCommand, CreateUpdateCommand, CreateDeleteCommand:
724 if column mapping is missing, use the source column name. use
725 proper version to get the data.
726 - RowUpdatingHandler: set status to continue to actually process
729 2005-07-04 Ben Maurer <bmaurer@ximian.com>
731 * SqlError.cs: Patch from dezelin@gmail.com to fix serialization.
733 2005-06-29 Sureshkumar T <tsureshkumar@novell.com>
735 * SqlConnection.cs: Open (): catch TdsInternalException and throw
737 * SqlException.cs: code re-organised to pass message as well with
740 2005-06-23 Sureshkumar T <tsureshkumar@novell.com>
742 * SqlConnectionStringBuilder.cs: simplified multiple keyword
743 mappings and allowed-key checking. fixed Item, Remove,
744 ContainsKey, ShoudSerialize, TryGetValue implementations.
746 2005-06-21 Sureshkumar T <tsureshkumar@novell.com>
748 * SqlConnectionStringBuilder.cs: Connection String Builder class
749 for SqlClient Data Provider.
751 2005-06-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
753 * SqlParameter.cs: moved the 'using S.D.SqlTypes' out of NET_2_0. Fixes
756 2005-06-01 Sureshkumar T <tsureshkumar@novell.com>
758 * SqlParameter.cs: Parameter's value can be SqlTypes. Convert to
759 framework type to pass to TDS layer. Fixes bug #75044.
761 2005-05-24 Umadevi S <sumadevi@novell.com>
762 * fixed some 2.0 and 1.0 specific fields/attributes for various classes.
763 * Added SqlClientMetaDataCollectionNames.cs, Implemented some 2.0
764 properties for SqlParameterCollection for the bulkcopy feature.
767 2005-05-20 Kornél Pál <http://www.kornelpal.hu/>
769 * Fixed Bug #53169 - SqlDataReader incorrectly returns bigint as decimal
770 Note: The fix works around the limitations of TDS 7.0 to avoid this
771 difference between Mono and .NET Framework TDS 8.0 should be used instead.
773 2005-05-20 Umadevi S <sumadevi@novell.com>
775 * Fixed Bug 74948 - SqlParameter also takes DBNull Value.
776 Correct some attributes stuff of 1.1 and 2.0 for SqlParameter.cs
778 2005-05-20 Umadevi S <sumadevi@novell.com>
780 * Continuing on implementation for bulkcopy and notification
781 Added files SqlNotificationEventArgs.cs, OnChangeEventHandler.cs
782 Modified SqlRowUpdatingEventArgs.cs
784 2005-05-19 Umadevi S <sumadevi@novell.com>
786 * For implementation of bulkcopy and notifications added files
787 SqlBulkCopyOptions.cs,SqlBulkCopyColumnMapping.cs,SqlNotificationAuthType.cs
788 SqlNotificationTransports.cs,SqlRowsCopiedEventArgs.cs, SqlRowsCopiedEventHandler.cs
790 2005-05-19 Umadevi S <sumadevi@novell.com>
792 * Corrected types,enum values of SqlNotificationType,SqlNotificationSource,
793 SqlNotificationInfo and added new method in SqlRowUpdatingEventArgs.cs
794 (For implementation of bulkcopy/notifications)
796 2005-04-19 Sureshkumar T <tsureshkumar@novell.com>
798 * SqlDataReader.cs: NextResult (): Re-create schema table for each
799 result set. don't re-use, as it may be referenced from somewhere.
801 2005-04-07 Sureshkumar T <tsureshkumar@novell.com>
802 Ankit Jain <radical@corewars.org>
804 * SqlConnection.cs: Implemented additional connection string
805 property "Asynchronous Processing".
807 * SqlCommand.cs: Implemented Asynchronous command execution API.
809 * SqlAsyncState.cs: A internal state object for asynchronous
812 * SqlAsyncResult.cs: Added. Class to hold result for asynchronous
815 2005-03-28 Sureshkumar T <tsureshkumar@novell.com>
817 * SqlCommand.cs: Execute: Add a semicolon at the end of
818 CommandText. Multiple semicolon's are not being complained.
822 2005-03-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
824 * SqlConnection.cs: added a finalizer for correct implementation of the
827 2005-03-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
829 * SqlException.cs: make it serialization-compatible with MS. Patch by
830 Aleksandar Dezelin. Closes bug #73596.
832 2005-03-08 Sureshkumar T <tsureshkumar@novell.com>
834 * SqlDataReader.cs: Call base constructor with CommandBehavior
835 parameter instead of passing DbCommand object. The internal base
836 class with DbCommand Parameter is removed.
838 2005-03-07 Sureshkumar T <tsureshkumar@novell.com>
840 * SqlCommand.cs : Set CommandBehavior on
841 ExecuteReader,ExecuteScalar,ExecuteNonQuery. This is used in
844 This fixes bug #73252.
846 2005-03-03 Sureshkumar T <tsureshkumar@novell.com>
848 * SqlClientFactory.cs: While creating command, create using
849 DbConnectionFactory as DbConnectionBase.CreateDbCommand needs to
850 have a connection factory.
852 * SqlConnection.cs: Added an internal constructor which takes
855 * SqlConnectionFactory.cs: Added. Concrete class for abstract
856 factory DbConnectionFactory.
858 2005-02-22 Sureshkumar T <tsureshkumar@novell.com>
860 * SqlDataReader.cs: GetBytes: return the length of the data if
861 output buffer is null. if not, copy the values to buffer and
862 return the bytes actually read.
864 2005-02-02 Sureshkumar T <tsureshkumar@novell.com>
867 - Database: return db name from database if connection open,
868 otherwise take from connection string.
869 - Set default values for parameters in the constructor itself.
870 - Dangling else problem with Close method.
871 - reset values of parms (TdsConnectionParameters) rather setting
873 - set disposed to false in Open method
874 - finally call base.Dispose in Dispose (bool)
876 Fixes nunit regressions SqlConnectionTest:DefaultConnectionValues
877 and SqlConnectionTest:DatabaseSynonyms.
879 2005-01-27 Sureshkumar T <tsureshkumar@novell.com>
881 * SqlCommand.cs (DeriveParameters): Change parameter name to
883 * SqlParameter.cs (SqlParameter (object [])) : call default
884 constructor to create Tds.Metaparameter.
888 2005-01-03 Sureshkumar T <tsureshkumar@novell.com>
890 * SqlCommand.cs: Fixed bug #68973. Reset Tds.RecordsAffected to 0
891 for each execute statement.
893 2004-11-25 Sureshkumar T <tsureshkumar@novell.com>
895 These changes are for 2.0 profile only. These changes implement
896 the generic data base access technique using Provider Factory
897 Implementation. These classes need to be dervided from abstract
898 base classes so that the corresponding factory classes are
899 created when calling CreateCommand, CreateParameter, etc.
901 * SqlClientFactory.cs: Provider Factory class Implementaion for SqlServer
902 * SqlParameter.cs: Change base classes and override methods.
903 * SqlParameterCollection.cs: Change base classes and override methods.
904 * SqlTransaction.cs: Change base classes and override methods.
905 * SqlDataSourceEnumerator.cs: DataSource Enumerator stubs.
906 * SqlDataReader.cs: Change base classes and override methods.
907 * SqlConnection.cs: Change base classes and override methods.
908 * SqlCommandBuilder.cs: Change base classes and override methods.
909 * SqlCommand.cs: Change base classes and override necessary methods.
911 2004-10-14 Umadevi S <sumadevi@novell.com>
912 * SqlCommand.cs - Implemented the clone method correctly.
915 2004-10-06 Umadevi S <sumadevi@novell.com>
916 * ISqlNoticationReceiver.cs - changed namespace
917 * Added files SqlNotificationType.cs, SqlNotificationInfo.cs, SqlNotificationSource.cs
919 2004-09-24 Umadevi S <sumadevi@novell.com>
920 * SqlTransaction.cs - Dispose will not call rollback incase the transaction is not open.
922 2004-09-14 Sebastien Pouliot <sebastien@ximian.com>
924 * SqlClientPermission.cs: Added internal constructor accepting an Sql
925 ClientPermissionAttribute parameter (using base class protected ctor).
926 * SqlClientPermissionAttribute.cs: Copy now use the new SqlClient
927 Permission constructor.
929 2004-09-13 Sebastien Pouliot <sebastien@ximian.com>
931 * SqlClientPermission.cs: Mostly completed (needs tests).
932 * SqlClientPermissionAttribute.cs: Completed.
934 2004-09-02 Umadevi S <sumadevi@novell.com>
935 * SqlCommand.cs - ExecuteNonQuery to return -1 incase of executing a storedprocedure
937 2004-08-16 Gert Driesen <drieseng@users.sourceforge.net>
939 * SqlConnection.cs: added TODO on ConnectionString for keywords
940 that are not yet implemented. check value of Integrated Security
941 keyword, check value of bool keywords, improve error reporting
942 for int keywords, added support for the following keyword
943 synonyms : APP, TIMEOUT, NETWORK, PERSISTSECURITYINFO, WSID,
944 LANGUAGE, USER. Throw NotImplementedException when encrypt keyword
945 is set to true, enlist keyword is set to false or attachdbfilename
946 keyword (or one of its synonyms) is set. Added FIXME for PERSIST
947 SECURITY INFO keyword, throwing a NotImplementedException here
948 would break lots of apps
950 2004-08-16 Gert Driesen <drieseng@users.sourceforge.net>
952 * SqlConnection.cs - spaces to tabs
954 2004-08-12 Sureshkumar T <tsureshkumar@novell.com>
955 * SqlDataReader.cs - In Close method, the remaining resultsets are drained
956 out, to read output parameters & to avoid stream overlap
958 2004-06-30 Umadevi S <sumadevi@novell.com>
959 * SqlCommand.cs : In the Execute Method the commandbehavior parameters were ignored correct
962 2004-06-22 Atsushi Enomoto <atsushi@ximian.com>
964 * SqlCommandBuilder.cs : Avoid cast exception caused by DbNull.
966 2004-06-18 Umadevi S <sumadevi@novell.com>
967 * SqlCommand.cs - ExecuteNonQuery returns -1 in all cases except
968 insert,update or delete.
970 2004-06-18 Umadevi S <sumadevi@novell.com>
971 * SqlConnection.cs - handled null being passed as a connectionstring
972 - checked for minimal set of parameters in connectionstring.
973 - handled unrecogonized keywords similar to MS.NET
975 2004-06-17 Umadevi S <sumadevi@novell.com>
976 * SqlTransaction.cs - fixed multiple rollbacks being called causes invalidoperationexception
978 2004-06-04 Gert Driesen <drieseng@users.sourceforge.net>
980 * SqlClientPermission.cs: removed extra CreateInstance
983 2004-06-02 Gert Driesen <drieseng@users.sourceforge.net>
985 * SQLDebugging.cs: added missing attributes, marked ctor
986 public to match MS.NET
988 2004-05-22 Atsushi Enomoto <atsushi@ximian.com>
990 * SqlClientPermission.cs : don't use chained obsolete .ctor.
992 2004-05-20 Gert Driesen (drieseng@users.sourceforge.net)
994 * SqlClientPermissionAttribute.cs: change AllowMultiple and
995 Inherited to match .NET
997 2004-05-20 Umadevi S <sumadevi@novell.com>
999 * Fixed bug 58406- implemented the hasrow method, test program used
1000 to test with the bug report
1002 2004-05-13 Umadevi S <sumadevi@novell.com>
1004 * SqlClientPermission.cs, SqlDataReader.cs - added missing methods with TODO tags
1005 * SqlCommand.cs, SqlDataAdapter.cs - implemented ToolboxItemAttribute
1006 * SQLDebugging.cs - Added new file with a TODO tag
1008 2004-04-05 Lluis Sanchez Gual <lluis@ximian.com>
1010 * SqlConnection.cs: Use connection pool implemented in Mono.Data.Tds.
1012 2004-04-01 Lluis Sanchez Gual <lluis@ximian.com>
1014 * SqlDataReader.cs: Null values are now represented with DBNull instances.
1017 2004-03-14 Tim Coleman <tim@timcoleman.com>
1018 * SqlCommand.cs SqlConnection.cs:
1019 Changes from two patches by Andres Taylor
1020 <andres@rotselleri.com>
1022 2004-03-12 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1024 * SqlParameter.cs: DO NOT USE the consts scheme if types can be referenced directly!
1026 2004-01-10 Atsushi Enomoto <atsushi@ximian.com>
1028 * SqlClientPermission.cs : Fixed NET_2_0 build related to
1029 obsolete attribute problem (see DbDataPermission.cs)
1031 2003-12-28 Tim Coleman <tim@timcoleman.com>
1033 Stubbed out this class.
1035 2003-12-23 Tim Coleman <tim@timcoleman.com>
1037 Improved connection string parsing. See
1038 System.Data.Common.DbConnectionString for source.
1040 2003-12-21 Tim Coleman <tim@timcoleman.com>
1042 Enable Integrated Security
1044 2003-12-19 Tim Coleman <tim@timcoleman.com>
1045 * ISqlNotificationReceiver.cs SqlResultSet.cs:
1047 * SqlClientPermission.cs:
1048 Fix constructor for 1.2
1050 2003-12-04 John Luke <jluke@cfl.rr.com>
1052 * SqlXmlTextReader.cs: applied patch from Chris Masters <neeeeeep@bigpond.com>
1053 fix peek so it checks if it is at the end and also to make sure that if Read()
1054 advances the position past the end of the localBuffer array, it makes
1055 a call to GetNextBuffer(). fixes bug #40253 System.IndexOutOfRangeException when
1056 using SqlCommand.ExecuteXmlReader()
1058 2003-11-20 Joerg Rosenkranz <JoergR@voelcker.com>
1060 * SqlConnection (SetDefaultConnectionParameters):
1061 Changed default value of WORKSTATION ID to reflect real
1062 host name instead of "localhost".
1064 2003-11-16 Ben Maurer <bmaurer@users.sourceforge.net>
1066 * SqlParameterCollection.cs (Clear): Clear needs to take
1067 the parameter out of the collection so that it can be used
1072 2003-10-03 Diego Caravana <diego@toth.it>
1074 * SqlCommand.cs: no change.
1076 * SqlConnection.cs (Close): Added checks for null instance
1079 * SqlParameter.cs (Direction): Now handles parameters of type
1080 ReturnValue and InputOutput.
1082 * SqlParameterCollection.cs (IndexOf(string)): Search for
1083 SqlParameter object in list is done by obtaining ParameterName
1084 attribute, not directly through list.IndexOf().
1086 2003-08-22 Duncan Mak <duncan@ximian.com>
1088 * SqlCommand.cs (ExecuteNonQuery): Return
1089 Connection.Tds.RecordsAffected if it is successful. Patch from
1090 Jörg Rosenkranz <joergr@voelcker.com>.
1092 This is part of a fix to bug #40315.
1094 2003-08-20 Duncan Mak <duncan@ximian.com>
1096 * SqlConnectionPool.cs (ReleaseConnection): A patch from Joerg
1097 Rosenkranz <JoergR@voelcker.com>. Currently, if a connection is
1098 closed by an external event (network problem, etc.) it is pushed
1099 back into the connection pool. The next Open call retrieves this
1100 invalid connection which leads to exceptions when executing
1103 This patch fixes this problem. This closes bug #47429.
1105 2003-07-04 Miguel de Icaza <miguel@ximian.com>
1107 * SqlDataReader.cs: Added extra information to the exceptions
1108 thrown by all the GetXXXX methods.
1110 2003-03-15 Daniel Morgan <danmorg@sc.rr.com>
1112 * SqlConnection.cs: if Server in the ConnectionString
1113 is set to "(local", use "localhost" as the hostname
1116 2003-03-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1118 * SqlException.cs: implemented GetObjectData ().
1120 2003-02-16 Daniel Morgan <danmorg@sc.rr.com>
1122 * ChangeLog: added this file
1124 * SqlConnection.cs: - parse data source for 3 possible uses:
1126 "Server=hostname\\instancename",
1127 "Server=hostname,port" and open the connection based on the
1128 resulting server name and port.
1129 - Added support for named instances
1130 by discovery of the sql server tcp port via the sql monitor (udp port 1434)
1131 thanks to Phillip Jerkins (Phillip.Jerkins@morgankeegan.com) contribution.
1132 Also, thanks to Gonzalo and Tim for their help with timeouts.