1 2008-06-27 Zoltan Varga <vargaz@gmail.com>
3 * SqlDataReader.cs (ConstructSchemaTable): Avoid unneccessary reflection calls.
5 2008-06-23 Veerapuram Varadhan <vvaradhan@novell.com>
7 * SqlDependency.cs: New
9 2008-06-12 Veerapuram Varadhan <vvaradhan@novell.com>
11 Patch by Christian Hergert <christian.hergert@gmail.com>
12 * SqlConnection.cs (Open): Do not reset the connection as it is already
13 done in the TdsConnectionPool itself.
15 2008-06-12 Marek Habersack <mhabersack@novell.com>
17 * SqlParameterCollection.cs: this [int] must check the range and
18 throw an exception if necessary.
20 * SqlCommand.cs: throw IOEX when stored procedure is not found in
21 DeriveParameters. All procedures in MS SQL will report at least
22 one parameter - the return value.
24 2008-06-10 Veerapuram Varadhan <vvaradhan@novell.com>
26 * SqlConnection.cs: TdsConnectionPool.GetConnectionPool() now returns
27 IDictionary<TKey, TValue>.
29 2008-06-09 Ankit Jain <jankit@novell.com>
31 * SqlCommand.cs: Use Tds instead of ITds now.
32 * SqlConnection.cs: Likewise.
34 2008-05-27 Gert Driesen <drieseng@users.sourceforge.net>
36 * SqlConnection.cs: Added support for '.' as alias for localhost.
37 Improve exception message when TCP/IP protocol is not enabled.
39 2008-05-17 Gert Driesen <drieseng@users.sourceforge.net>
41 * SqlDataReader.cs (GetInt64): Removed workaround for TDS 7.0 handling
42 of bigint column type as this is handled in Mono.Data.Tds.
44 2008-05-14 Marek Habersack <mhabersack@novell.com>
46 * SqlConnection.cs: added support for USER INSTANCE keyword in the
49 2008-04-22 Veerapuram Varadhan <vvaradhan@novell.com>
52 * SqlCommand.cs: Handle exceptions sanely and do not close
53 connection on TdsTimeoutException.
55 2008-04-21 Gert Driesen <drieseng@users.sourceforge.net>
57 * SqlBulkCopyColumnMappingCollection.cs: Changed argument names to
58 match MS. Code formatting.
59 * SqlCommand.cs: Changed argument names to match MS. Code formatting.
60 Do not include explicit IDbCommand implementation on 2.0 profile.
61 * SqlCommandBuilder.cs: Changed argument names to match MS. Code
63 * SqlDataReader.cs: Changed argument names to match MS. Code
65 * SqlParameterCollection.cs: Do not include IList, ICollection and
66 IDataParameterCollection explicit interface implementation on 2.0
67 profile. Code formatting.
68 * SqlConnection.cs: Changed argument names to match MS.
69 * SqlDataAdapter.cs: Changed argument names to match MS.
70 * SqlTransaction.cs: Do not include explicit interface implementation
71 of IDbTransaction.Connection on 2.0 profile. Code formatting.
73 2008-04-19 Robert Jordan <robertj@gmx.net>
75 * SqlParameterCollection.cs (AddRange(SqlParameter[])):
76 Fix endless recursion.
78 2008-04-08 Marek Habersack <mhabersack@novell.com>
80 * SqlConnection.cs: TCP port discovery via UDP port 1434 should
81 honor the timeout specified in the connection string (or the
82 default one). In some environments 100 microseconds might not be
83 enough to discover the port.
85 2008-04-01 Marek Habersack <mhabersack@novell.com>
87 * SqlParameter.cs: ConvertToFrameworkType must handle empty
88 strings gracefully - a DBNull.Value must be returned in this
91 * SqlCommand.cs: DeriveParameters should split the stored
92 procedure name into the schema name and procedure name before
93 querying its parameters.
95 2008-03-03 Ankit Jain <jankit@novell.com>
97 * SqlClientMetaDataCollectionNames.cs: Set the field values.
99 2007-10-21 Gert Driesen <drieseng@users.sourceforge.net>
101 * SqlCommand.cs: Use ExceptionHelper.CheckEnumValue for enum checks.
103 2007-10-20 Gert Driesen <drieseng@users.sourceforge.net>
105 * SqlCommand.cs: Added constant for default CommandTimeout, instead
106 of using a magic number. Avoid unnecessary initialization. Fixed
107 default value for DesignTimeVisible. Return zero-length string if
108 CommandText is null. Use ExceptionHelper.InvalidEnumValueException
109 to avoid code duplication. Spaces to tabs and code formatting.
110 * SqlConnection.cs: Use different default package size on 2.0 profile.
111 Added constants for default values, instead of using magic numbers.
112 Avoid unnecessary initialization. In PacketSize, return default or
113 configured packet size when connection is not open. Use
114 ExceptionHelper.ConnectionClosed instead of local method. Removed
115 use of some hardcoded values in SetDefaultConnectionParameters, and
116 use Environment.MachineName as default WorkstationId instead of
117 DNS host name. Code formatting.
118 * SqlDataAdapter.cs: In default ctor, set SelectCommand to null.
119 Avoid unnecessary initializations. Use direct assignment in
120 IDbDataAdapter implementation. Fixed exception message for negative
121 UpdateBatchSize. In Dispose override, make sure to invoke base
124 2007-10-19 Gert Driesen <drieseng@users.sourceforge.net>
126 * SqlTransaction.cs: Clear connection in commit. In IsolationLevel,
127 throw IOE if transaction is no longer open.
129 2007-10-19 Gert Driesen <drieseng@users.sourceforge.net>
131 * SqlTransaction.cs: Avoid unnecessary initialization. Remove
132 isRolledBack since its essentially the same as isOpen. Use
133 ExceptionHelper.TransactionNotUsable instead of duplicating code.
134 On 2.0 profile, ignore call to Rollback when transaction was already
137 2007-10-18 Gert Driesen <drieseng@users.sourceforge.net>
139 * SqlConnection.cs: Avoid unnecessary initialization. Use string.Empty
140 for assigning zero-length string, and use String.Length to check for
141 zero-length string. Added support for IsolationLevel.Snapshot.
142 Added StructuredTypeMembers schema collection and restrictions. Fixed
143 table name for MetaDataCollections collection. Implemented
144 DataSourceInformation collection. Added missing data types (probably
145 introduced in 2.0 SP1). In GetSchema, throw InvalidOperationException
146 if connection is closed and throw NotImplementedException for
147 StructuredTypeMembers collection.
149 2007-10-18 Gert Driesen <drieseng@users.sourceforge.net>
151 * SqlConnection.cs: On 1.0 profile, IsolationLevel.Unspecified is
152 not valid. On 2.0 profile, when IsolationLevel.Unspecified is passed
153 make sure to also set SqlTransaction.IsolationLevel to
154 ReadCommitted. Modified exceptions to match MS.
156 2007-10-17 Nagappan <anagappan@novell.com>
158 * SqlParameter.cs (ConvertToFrameworkType): Added SqlDbType.Image.
160 2007-10-17 Nagappan <anagappan@novell.com>
162 * SqlConnection.cs: BeginTransaction does not handle
163 IsolationLevel.Unspecified, so the default is set as ReadCommited.
164 Thanks to Jerome Haltom <wasabi@larvalstage.net> for this patch. Fixes
166 * SqlTransaction.cs: If transaction count is greater then 0 then roll back.
167 Thanks to Jerome Haltom <wasabi@larvalstage.net> for this patch. Fixes
170 2007-10-15 Gert Driesen <drieseng@users.sourceforge.net>
172 * SqlException.cs: Do not hide Message on 2.0 profile. Fixes bug
175 2007-10-08 Marek Safar <marek.safar@gmail.com>
177 * SqlParameterCollection.cs (SetParameter): Fixed missing cast.
179 2007-09-27 Nagappan A <anagappan@novell.com>
181 * SqlConnection.cs: Added MonoTODO appropriately.
183 2007-09-26 Nagappan A <anagappan@novell.com>
185 * SqlCommandBuilder.cs: Code alignment.
187 2007-09-25 Nagappan A <anagappan@novell.com>
189 * SqlInitialCatalogConverter.cs, SqlDataSourceConverter.cs:
190 NetworkLibraryConverter.cs: Added new files.
192 * SqlParameter.cs: 2.0 attribute changes.
194 * SqlDataAdapter.cs: 2.0 attribute changes.
196 * SqlConnectionStringBuilder.cs: 2.0 attribute changes.
198 * SqlConnection.cs (ClearAllPools, ClearPool): Implemented 2.0
199 APIs, other 2.0 attribute changes.
201 * SqlCommandBuilder.cs (GetSchemaTable, InitializeCommand):
202 Implemented 2.0 APIs, other 2.0 attribute changes.
204 * SqlBulkCopyColumnMappingCollection.cs: Added constructor, 2.0
205 API compatibility changes.
207 * SqlException.cs: 2.0 attribute changes.
209 2007-08-13 Nagappan A <anagappan@novell.com>
211 * SqlConnection.cs (ConnectionString): 2.0 compatibility changes.
213 * SqlDataReader.cs (IsCommandBehavior): Fixed spelling mistake of
215 (Dispose): 2.0 compatibility changes.
217 * SqlBulkCopy.cs (SqlRowsCopied): Fixed spelling mistake of the
219 (RowsCopied): Generates event when NotifyAfter is set.
221 * SqlCommandBuilder.cs (Dispose, RefreshSchema): 2.0 compatibility
224 * SqlClientFactory.cs (CreateDataSourceEnumerator): Removed bogus
227 * SqlException.cs (Message): 2.0 compatibility changes.
229 2007-08-06 Nagappan A <anagappan@novell.com>
231 * SqlCommand.cs, SqlDataReader.cs, SqlConnection.cs: When the
232 server resets the connection, now the client code also disconnects
233 the session and remove the instance from pool. Fixes bug # 81933.
235 2007-07-31 Nagappan A <anagappan@novell.com>
237 * SqlCommand.cs (Transaction, Connection): IDbCommand Transaction
238 and Connection can be set to null. Fixes bug 82189.
240 2007-07-23 Nagappan A <anagappan@novell.com>
242 * SqlCommandBuilder.cs (ApplyParameterInfo, GetParameterName):
243 (GetParameterPlaceholder): Implemented 2.0 missing APIs.
245 2007-07-22 Nagappan A <anagappan@novell.com>
247 * SqlBulkCopy.cs (NotifyAfter): Implemented 2.0 property.
248 (GetColumnMetaData, GenerateColumnMetaData):
249 (ValidateColumnMapping): Implemented private method's to generate
250 and validate SqlBulkCopy headers.
251 (BulkCopyToServer): Private method to actually do the bulk copy
253 (WriteToServer): Implemented 2.0 missing overloaded methods.
254 (IDisposable.Dispose): Implemented 2.0 missing method.
256 * SqlBulkCopyColumnMappingCollection.cs (Add, CopyTo): Implemented
258 (Item): Implemented missing property.
260 * SqlBulkCopyColumnMapping.cs: Modified the implementation of
261 Constructors to use property.
263 * SqlDataReader.cs (GetSqlXml, IsCommandBehaviour): Added 2.0
265 (Connection): Added missing property.
267 * SqlParameter.cs (SetSqlDbType, ConvertToFrameworkType): Modified
268 method as internal from private.
270 * SqlConnection.cs: Fixed 2.0 missing feature.
272 * SqlException.cs: Fixed 2.0 missing feature.
274 * SqlClientPermission.cs: Fixed 2.0 missing feature.
276 2007-07-01 Gert Driesen <drieseng@users.sourceforge.net>
278 * ISqlNotificationReceiver.cs: Removed.
279 * SqlClientFactory.cs: Use SqlDataSourceEnumerator from S.D.Sql and
280 marked method todo. Avoid unnessary casts. Code formatting.
281 * SqlCommand.cs: Explicit interface implementation of IDbCommand not
282 necessary on 2.0 profile. Fixes API mismatches. Avoid unnecessary
283 casts. Code formatting.
284 * SqlConnection.cs: Also use RecommendAsConfigurable instead of
285 SettingBindableAttribute on 2.0. Use StateChange event from base class
286 on 2.0. Only explicitly implement IDbConnection methods on 1.0, since
287 these are implemented by base class on 2.0 profile. Removed extra
288 explicit implementation of IDisposable since the base class implements
289 this. Code formatting.
290 * SqlDataAdapter.cs: Dispose (bool) override not necessary on 2.0
291 profile. Stubbed ICloneable.Clone. Fixes API mismatches.
292 * SqlDataReader.cs: On 2.0, IDisposable.Dispose is implemented by
293 DbDataReader. Only 1.0 profile, explicitly implemented IEnumerable
294 GetEnumerator. Code formatting.
295 * SqlDataSourceEnumerator.cs: Removed.
296 * SQLDebugging.cs: Marked sealed on 2.0. Code formatting.
297 * SqlNotificationAuthType.cs: Removed.
298 * SqlNotificationInfo.cs: Added missing fields. Code formatting.
299 * SqlNotificationSource.cs: Added missing fields. Code formatting.
300 * SqlNotificationTransports.cs: Removed.
301 * SqlNotificationType.cs: Added missing Unknown field. Code formatting.
302 * SqlParameter.cs: Removed Browsable and EditorBrowsable attributes
303 from Precision and Scale. Fixes API mismatches. Code formatting fixes.
304 * SqlTransaction.cs: On 2.0 profile, Dispose method is exposed by
305 base class. Fixes API mismatches. Code formatting fixes.
307 2007-06-21 Nagappan A <anagappan@novell.com>
309 * SqlConnection.cs: Fixed compiler warning.
311 2007-06-11 Nagappan A <anagappan@novell.com>
313 * SqlConnection.cs (ParseDataSource): Adds tcp support in
314 connection string. Fixes bug # 80975.
316 * SqlCommand.cs (Dispose): On disposing the command object, don't
317 dispose connection and transaction.
319 2007-06-06 Nagappan A <anagappan@novell.com>
321 * SqlCommand.cs, SqlConnectionStringBuilder.cs, SqlConnection.cs:
322 Fixed 1.0 and 2.0 extras, errors as stated in class status page.
324 * SqlDataAdapter.cs, SqlParameter.cs:Fixed 1.0 and 2.0 extras,
325 errors as stated in class status page.
327 * SqlBulkCopyColumnMappingCollection.cs: Fixed 1.0 and 2.0 extras,
328 errors as stated in class status page.
330 2007-05-30 Nagappan A <anagappan@novell.com>
332 * SqlParameter.cs (SqlParameter): Updated constructor to use the
333 new TDS RPC implementation.
334 Fixed missing attributes.
335 (SetDbType): Added new case for sql_variant type.
336 (ConvertToFrameworkType): Implemented new private method to
337 convert the data type to framework type.
339 * SqlParameterCollection.cs: Fixed missing attributes and
340 implemented missing methods.
342 * SqlConnection.cs: Fixed missing attributes.
344 * SqlConnectionStringBuilder.cs: Certain attributes are missing or
345 its value or they are not appropriate. Fixed them.
347 * SqlDataReader.cs (GetData): Method is available only under 1.0
350 * SqlCommandBuilder.cs: Certain attributes are available only
351 under 2.0 profile, so moved them inside ifdef.
353 * SqlCommand.cs: Certain attributes are available only under 2.0
354 profile, so moved them inside ifdef.
356 * SqlBulkCopy.cs: Added new stubs.
358 * SqlBulkCopyColumnMappingCollection.cs: Added new stubs.
360 2007-05-29 Nagappan A <anagappan@novell.com>
362 * SqlCommand.cs (Dispose): Command.Dispose closing
363 connection. Fixes bug # 81710. Thanks to AMC <amc1999@gmail.com>
366 2007-05-10 Nagappan A <anagappan@novell.com>
368 * SqlClientMetaDataCollectionNames.cs: Fixed incorrect constructor
371 * SqlConnectionStringBuilder.cs: Fixed missing attributes.
373 2007-05-09 Igor Zelmanovich <igorz@mainsoft.com>
375 * SqlConnectionStringBuilder.cs: added MonoNotSupported attribute.
377 2007-04-03 Amit Biswas <amit@amitbiswas.com>
379 * SqlDataReader.cs (GetSqlBytes, GetProviderSpecificFieldType)
380 (GetProviderSpecificValue, GetProviderSpecificValues): Implemented
383 * SqlParameter.cs (XmlSchemaCollectionDatabase): Implemented missing property
384 (XmlSchemaCollectionName): Implemented missing property
385 (XmlSchemaCollectionOwningSchema): Implemented missing property
386 (SourceColumnNullMapping): Existing implementation was not correct, Replaced the implementation
387 (.ctor): Implemented mising constructor new in .net 2.0
389 * SqlErrorCollection.cs (CopyTo): Implemented missing API
391 * SqlParameter.cs (InferSqlType): Corrected bug related to default values of
393 (ResetSqlDbType): Implemented missing API
394 (ResetDbType): Implemented missing API
396 2007-03-09 Amit Biswas <amit@amitbiswas.com>
398 * SqlParameterCollection.cs (CopyTo): Implemented missing API
400 2007-04-02 Nagappan A <anagappan@novell.com>
402 * SqlParameter.cs: Variable name fix.
404 2007-03-20 Nidhi Rawal <rawalnidhi_rawal@yahoo.com>
406 * SqlClientFactory.cs: Added two using directives.
407 (CreateConnectionStringBuilder): Implemented the method.
408 (CreatePermission): Implemented the property.
410 * SqlCommand.cs: Added one using directive.
411 (Clone): Implemented the method.
412 (Dispose): Implemented the method.
413 (BeginExecuteXmlReader): Implemented the method.
415 * SqlCommandBuilder.cs (QuoteIdentifier): Implemented the method.
416 (UnquoteIdentifier): Implemented the method.
418 * SqlConnection.cs (ChangePassword): Implemented the method.
420 2007-03-19 Nidhi Rawal <rawalnidhi_rawal@yahoo.com>
422 * SqlClientFactory.cs (CanCreateDataSourceEnumerator): Implemented
425 * SqlCommand.cs (Notification): Implemented the property.
426 (NotificationAutoEnlist): Implemented the property.
428 * SqlDataReader.cs (VisibleFieldCount): Implemented the property.
430 * SqlConnectionStringBuilder.cs (TrustServerCertificate): Implemented
432 (TypeSystemVersion): Implemented the property.
433 (UserInstance): Implemented the property.
434 (ContextConnection): Implemented the property.
436 * SqlConnection.cs (FireInfoMessageEventOnUserErrors): Implemented
438 (StatisticsEnabled): Implemented the property.
440 * SqlDataAdapter.cs (UpdateBatchSize): Implemented the property.
442 * SqlParameter.cs: Implemented one attribute.
444 2007-03-16 Andreia Gaita <avidigal@novell.com>
446 * SqlParameter.cs: Move isVariableSizeType flag to TdsMetaParameter
447 so that the TdsMetaParameter can validate itself for valid size / values.
448 * SqlCommand.cs (Execute): Call Validate on TdsMetaParameter.
450 2007-03-14 Nagappan A <anagappan@novell.com>
452 * SqlCommand.cs (CommandType): Exception type thrown in 2.0
453 profile is different than 1.0, ArgumentOutOfRangeException.
454 (Connection): Exception type thrown in 2.0 profile is different
455 than 1.0, ArgumentOutOfRangeException.
456 (Execute): If Size property is 0 for String and Binary type, then
457 throw InvalidOperationException.
458 (ValidateCommand): Exception type thrown in 2.0 profile is
459 different than 1.0, NullReferenceException.
461 2007-03-09 Nagappan A <anagappan@novell.com>
463 * SqlDataReader.cs: Fixed syntax erros reported in class status
466 2007-03-09 Andreia Gaita <avidigal@novell.com>
468 * SqlCommand.cs (ExecuteScalar): Fix returned value for
469 stored procedure calls to return the first column of the
470 first row produced by the proc.
472 2007-03-08 Nagappan A <anagappan@novell.com>
474 * SqlCommand.cs (CloseDataReader): Checks whether the SQL
475 connection is created or not.
477 2007-03-07 Andreia Gaita <avidigal@novell.com>
479 * SqlCommand.cs (ExecuteScalar): when calling stored procedures,
480 implement support for return of output values in the parameter
483 2007-02-16 Nidhi Rawal <rawalnidhi_rawal@yahoo.com>
485 * SqlParameter.cs (CompareInfo): Implemented the property
487 (LocaleId): Written the property LocaleId.
488 (SqlValue): Written the propert SqlValue.
490 2007-02-15 Nidhi Rawal <rawalnidhi_rawal@yahoo.com>
492 * SqlCommand.cs: Added some attributes which were not implemented
493 for .NET 2.0 and removed extra attribute which are not there in
496 * SqlCommandBuilder.cs: Added some attributes that were not
497 implemented for .NET 2.0.
499 * SqlParameterCollection.cs: Added some attributes that were
500 not implemented for .NET 2.0.
502 * SqlConnectionStringBuilder.cs: Added some attributes that
503 were not implemented for .NET 2.0.
505 * SqlConnection.cs: Added attribute that was not implemented
508 * SqlParameter.cs: Added some attributes which were not
509 implemented for .NET 2.0 and removed some extra attributes which
510 are not there in .NET 2.0
512 2007-02-09 Nagappan A <anagappan@novell.com>
514 * SqlConnection.cs (SetConnectionString): Fixes bug # 80712. A
517 2007-01-08 Nagappan A <anagappan@novell.com>
519 * SqlTransaction.cs (Dispose): Fixed compliation warning.
521 * SqlDataReader.cs (GetValues): Length of elements to be copied was
522 decided based on the argument array passed, which caused a bug, if
523 the length of given array is more than actual column values.
525 * SqlCommandBuilder.cs (CatalogSeparator, SchemaSeparator)
526 (CatalogLocation): Implemented missing properties.
527 (CreateDeleteCommand, CreateInsertCommand, CreateUpdateCommand):
528 Modified private methods to take bool flag. If true, add actual
529 parameter name instead of p1, p2 etc.
530 (CreateParameter): Added overloaded private method to create
531 parameter with the actual column name.
532 (GetUpdateCommand, GetDeleteCommand, GetInsertCommand):
533 Implemented missing overloaded methods.
534 (SetRowUpdatingHandler): Implemented missing protected method.
536 * SqlCommand.cs: Fixed compilation warning. Removed bogus
539 2006-12-05 Nagappan A <anagappan@novell.com>
541 * SqlCommand.cs (Execute): If sql2 length is greater than 0, then
542 add ';' and the respective sql2 string and then execute the
543 string. Fixes bug # 79880.
545 2006-08-30 Nagappan A <anagappan@novell.com>
547 * SqlConnection.cs: Implemented SqlConnection.GetSchema ().
549 2006-09-08 Konstantin Triger <kostat@mainsoft.com>
551 * SqlClientFactory.cs: implemented SqlClientFactory.CreateConnection ().
553 2006-07-13 Senganal T <tsenganal@novell.com>
555 * SqlClientFactory.cs SqlCommand.cs SqlConnectionFactory.cs
556 SqlClientPermission.cs SqlParameterCollection.cs SqlDataReader.cs
557 SqlConnection.cs SqlParameter.cs SqlTransaction.cs :
560 2006-05-31 Gert Driesen <drieseng@users.sourceforge.net>
562 * SqlConnection.cs: Removed extra destructor, as destructor on
563 System.ComponentModel.Component already calls Dispose.
564 * SqlParameter.cs: Removed explicit interface implementation of
565 IDataParameter.ParameterName.
567 2006-05-26 Senganal T <tsenganal@novell.com>
570 - InferSqlType : if value is null or DBNull.Value, retain the
571 current parameter type.
573 2006-04-18 Senganal T <tsenganal@novell.com>
576 - SetConnectionString : set the pareameter to default values
577 if connection string is empty or null
578 - Open : Raise InvalidOperationException if Connection String
580 - Dispose : Test exception not raised if dispose called on a
581 connection with empty connection string
583 slight modification of the patch by Jonel Rienton
585 2006-04-07 Senganal T <tsenganal@novell.com>
587 * SqlCommandBuilder.cs :
588 * CreateDeleteCommand ()
589 * CreateUpdateCommand ()
590 * CreateInsertCommand ()
591 - Changed the signature. Do not need DataRow parameter
592 as the Query generated is parametric.
593 - Correct the null-check term in the WhereClause, set the
594 correct properties for null-check parameter
596 - Modified the generated query to match the query as
597 generated by 2.0. We now ignore null-check in the
598 whereclause if the Column does not allow nulls.
599 * ctor () : Set QuotePrefix and QuoteSuffix for 2.0 profile
600 * GetUpdateCommand ()
601 * GetInsertCommand ()
602 * GetDeleteCommand ()
603 - Do not create new command everytime. Create only if
605 * RefreshSchema : Reset the commands.
607 2006-02-17 Chris Toshok <toshok@ximian.com>
609 * SqlCommand.cs, SqlCommandBuilder.cs, SqlConnection.cs,
610 SqlDataAdapter.cs: remove DataSysDescription attributes for >= 2.0
612 2006-02-17 Chris Toshok <toshok@ximian.com>
614 * SqlDataReader.cs: remove VisibleFieldCount property.
616 2006-02-10 Senganal T <tsenganal@novell.com>
618 - GetBytes : Read binary/blob/clob data sequentially when
619 CommandBehavior is set to SequentialAcccess
620 - GetChars : Read String/clob data sequentially when CommandBehavior
621 is set to SequentialAccess
623 - ExecuteReader : set SequentialAccess property on TDS
624 - CloseDataReader : Reset the command behavior
626 2006-01-27 Senganal T <tsenganal@novell.com>
628 * SqlCommandBuilder.cs :
629 - Modified CreateUpdateCommand,CreateDeleteCommand , to not include
630 column name in the query if its a expression col.
631 Also, modified the queries to match the generated queries in ms.net
633 - Modifed Prepare, to check if Parameter is explicitly initialized
635 - Added CheckIfInitialized : Checks if datatype is explicitly set and
636 non-zero size is set for variable datatypes.
638 - Added code for GetSqlBinary ()
639 - Fixed GetFieldCount ()
640 - Added more checks and exceptions.
642 2006-01-17 Senganal T <tsenganal@novell.com>
644 * SqlCommandBuilder.cs
645 - Modified CreateNewCommand () : Clean up any existing parameter list
646 before reusing the command.Fixes #77225
648 2005-11-24 Senganal T <tsenganal@novell.com>
651 - Modifications to get the correct Packet Size
653 2005-11-21 Senganal T <tsenganal@novell.com>
655 * SqlClientFactory.cs
656 * SqlCommandBuilder.cs
657 * SqlParameterCollection.cs
663 Added stubs and other changes for ADO.NET 2.0 compatibility
665 2005-11-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
667 * SqlConnection.cs: don't throw NotImplementedException when using
668 'PERSIST SECUTIRY INFO'. Just do nothing.
670 2005-10-27 Senganal T <tsenganal@novell.com>
675 Made changes so that the number of rows affected can be got directly from
676 Tds regardsless of the type of query.Fixes bug #75698
678 2005-10-19 Senganal T <tsenganal@novell.com>
680 * SqlConnection.cs (SetProperties) :
681 - Added support for AttachDBFileName
683 2005-10-19 Senganal T <tsenganal@novell.com>
685 * SqlException.cs (Constructor)
686 - Modified the constructor, so that the message parameter
687 of base class is not the same as that of the Exception message.
690 2005-09-24 Sureshkumar T <tsureshkumar@novell.com>
692 * SqlParameterCollection.cs (AddWithValue): added method. patch
693 from awaddell@fnfr.com (Andy Waddell).
695 2005-09-21 Senganal T <tsenganal@novell.com>
699 - Set the correct Default Values for Parameters.
700 - Added Argument Checks (where missing) for the Properties and
701 throw the correct exception on error.
702 - Modified SetDefaultParameters() to make sure that the parameters
703 are all reset to default values everytime it is called.
704 - Modified SetProperties() to take into account the order of the
705 keywords in the ConnectionString.
707 SqlConnection Fixes for the failing sqlserver connected-mode testcases
708 in ProviderTest/System.Data.SqlClient/SqlConnectionTest.cs
710 2005-09-21 Senganal T <tsenganal@novell.com>
712 * SqlTransaction.cs : Modifed the Rollback() method, so that
713 connection can be used for another transaction after the previous
714 transaction is rolled back. fixes bug 75904
716 2005-09-02 Umadevi S <sumadevi@novell.com>
718 * Removed SqlResultSet.cs file
720 2005-08-26 Sureshkumar T <tsureshkumar@novell.com>
722 * SqlConnection.cs (Open): enable sp_reset_connection.
724 2005-08-25 Sureshkumar T <tsureshkumar@novell.com>
726 * SqlCommandBuilder.cs: BuildInformation (): continue on columns
727 who don't have basetablename.
729 2005-08-12 Daniel Morgan <danielmorgan@verizon.net>
731 * SqlCommandBuilder.cs: update command builder based on
732 OdbcCommandBuilder latest changes to fix regression
735 2005-08-05 Sureshkumar T <tsureshkumar@novell.com>
737 * SqlCommandBuilder.cs: Set SourceVersion property to the created
738 parameters as it is used by the Adapter's Update method.
740 2005-07-22 Sureshkumar T <tsureshkumar@novell.com>
742 * SqlCommandBuilder.cs, SqlParameterCollection.cs,
743 SqlConnection.cs, SqlParameter.cs:
744 - updated attributes & attribute descriptions to match with
747 2005-07-16 Daniel Morgan <danielmorgan@verizon.net>
749 * SqlCommandBuilder.cs: CreateUpdateCommand should get the current value, not
750 the orginal value when setting one of the SET variables
752 2005-07-15 Sureshkumar T <tsureshkumar@novell.com>
754 * SqlCommandBuilder.cs:
755 - set_DataAdapter: unsubscribe event if DataAdapter is reset.
756 - CreateInsertCommand, CreateUpdateCommand, CreateDeleteCommand:
757 if column mapping is missing, use the source column name. use
758 proper version to get the data.
759 - RowUpdatingHandler: set status to continue to actually process
762 2005-07-04 Ben Maurer <bmaurer@ximian.com>
764 * SqlError.cs: Patch from dezelin@gmail.com to fix serialization.
766 2005-06-29 Sureshkumar T <tsureshkumar@novell.com>
768 * SqlConnection.cs: Open (): catch TdsInternalException and throw
770 * SqlException.cs: code re-organised to pass message as well with
773 2005-06-23 Sureshkumar T <tsureshkumar@novell.com>
775 * SqlConnectionStringBuilder.cs: simplified multiple keyword
776 mappings and allowed-key checking. fixed Item, Remove,
777 ContainsKey, ShoudSerialize, TryGetValue implementations.
779 2005-06-21 Sureshkumar T <tsureshkumar@novell.com>
781 * SqlConnectionStringBuilder.cs: Connection String Builder class
782 for SqlClient Data Provider.
784 2005-06-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
786 * SqlParameter.cs: moved the 'using S.D.SqlTypes' out of NET_2_0. Fixes
789 2005-06-01 Sureshkumar T <tsureshkumar@novell.com>
791 * SqlParameter.cs: Parameter's value can be SqlTypes. Convert to
792 framework type to pass to TDS layer. Fixes bug #75044.
794 2005-05-24 Umadevi S <sumadevi@novell.com>
795 * fixed some 2.0 and 1.0 specific fields/attributes for various classes.
796 * Added SqlClientMetaDataCollectionNames.cs, Implemented some 2.0
797 properties for SqlParameterCollection for the bulkcopy feature.
800 2005-05-20 Kornél Pál <http://www.kornelpal.hu/>
802 * Fixed Bug #53169 - SqlDataReader incorrectly returns bigint as decimal
803 Note: The fix works around the limitations of TDS 7.0 to avoid this
804 difference between Mono and .NET Framework TDS 8.0 should be used instead.
806 2005-05-20 Umadevi S <sumadevi@novell.com>
808 * Fixed Bug 74948 - SqlParameter also takes DBNull Value.
809 Correct some attributes stuff of 1.1 and 2.0 for SqlParameter.cs
811 2005-05-20 Umadevi S <sumadevi@novell.com>
813 * Continuing on implementation for bulkcopy and notification
814 Added files SqlNotificationEventArgs.cs, OnChangeEventHandler.cs
815 Modified SqlRowUpdatingEventArgs.cs
817 2005-05-19 Umadevi S <sumadevi@novell.com>
819 * For implementation of bulkcopy and notifications added files
820 SqlBulkCopyOptions.cs,SqlBulkCopyColumnMapping.cs,SqlNotificationAuthType.cs
821 SqlNotificationTransports.cs,SqlRowsCopiedEventArgs.cs, SqlRowsCopiedEventHandler.cs
823 2005-05-19 Umadevi S <sumadevi@novell.com>
825 * Corrected types,enum values of SqlNotificationType,SqlNotificationSource,
826 SqlNotificationInfo and added new method in SqlRowUpdatingEventArgs.cs
827 (For implementation of bulkcopy/notifications)
829 2005-04-19 Sureshkumar T <tsureshkumar@novell.com>
831 * SqlDataReader.cs: NextResult (): Re-create schema table for each
832 result set. don't re-use, as it may be referenced from somewhere.
834 2005-04-07 Sureshkumar T <tsureshkumar@novell.com>
835 Ankit Jain <radical@corewars.org>
837 * SqlConnection.cs: Implemented additional connection string
838 property "Asynchronous Processing".
840 * SqlCommand.cs: Implemented Asynchronous command execution API.
842 * SqlAsyncState.cs: A internal state object for asynchronous
845 * SqlAsyncResult.cs: Added. Class to hold result for asynchronous
848 2005-03-28 Sureshkumar T <tsureshkumar@novell.com>
850 * SqlCommand.cs: Execute: Add a semicolon at the end of
851 CommandText. Multiple semicolon's are not being complained.
855 2005-03-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
857 * SqlConnection.cs: added a finalizer for correct implementation of the
860 2005-03-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
862 * SqlException.cs: make it serialization-compatible with MS. Patch by
863 Aleksandar Dezelin. Closes bug #73596.
865 2005-03-08 Sureshkumar T <tsureshkumar@novell.com>
867 * SqlDataReader.cs: Call base constructor with CommandBehavior
868 parameter instead of passing DbCommand object. The internal base
869 class with DbCommand Parameter is removed.
871 2005-03-07 Sureshkumar T <tsureshkumar@novell.com>
873 * SqlCommand.cs : Set CommandBehavior on
874 ExecuteReader,ExecuteScalar,ExecuteNonQuery. This is used in
877 This fixes bug #73252.
879 2005-03-03 Sureshkumar T <tsureshkumar@novell.com>
881 * SqlClientFactory.cs: While creating command, create using
882 DbConnectionFactory as DbConnectionBase.CreateDbCommand needs to
883 have a connection factory.
885 * SqlConnection.cs: Added an internal constructor which takes
888 * SqlConnectionFactory.cs: Added. Concrete class for abstract
889 factory DbConnectionFactory.
891 2005-02-22 Sureshkumar T <tsureshkumar@novell.com>
893 * SqlDataReader.cs: GetBytes: return the length of the data if
894 output buffer is null. if not, copy the values to buffer and
895 return the bytes actually read.
897 2005-02-02 Sureshkumar T <tsureshkumar@novell.com>
900 - Database: return db name from database if connection open,
901 otherwise take from connection string.
902 - Set default values for parameters in the constructor itself.
903 - Dangling else problem with Close method.
904 - reset values of parms (TdsConnectionParameters) rather setting
906 - set disposed to false in Open method
907 - finally call base.Dispose in Dispose (bool)
909 Fixes nunit regressions SqlConnectionTest:DefaultConnectionValues
910 and SqlConnectionTest:DatabaseSynonyms.
912 2005-01-27 Sureshkumar T <tsureshkumar@novell.com>
914 * SqlCommand.cs (DeriveParameters): Change parameter name to
916 * SqlParameter.cs (SqlParameter (object [])) : call default
917 constructor to create Tds.Metaparameter.
921 2005-01-03 Sureshkumar T <tsureshkumar@novell.com>
923 * SqlCommand.cs: Fixed bug #68973. Reset Tds.RecordsAffected to 0
924 for each execute statement.
926 2004-11-25 Sureshkumar T <tsureshkumar@novell.com>
928 These changes are for 2.0 profile only. These changes implement
929 the generic data base access technique using Provider Factory
930 Implementation. These classes need to be dervided from abstract
931 base classes so that the corresponding factory classes are
932 created when calling CreateCommand, CreateParameter, etc.
934 * SqlClientFactory.cs: Provider Factory class Implementaion for SqlServer
935 * SqlParameter.cs: Change base classes and override methods.
936 * SqlParameterCollection.cs: Change base classes and override methods.
937 * SqlTransaction.cs: Change base classes and override methods.
938 * SqlDataSourceEnumerator.cs: DataSource Enumerator stubs.
939 * SqlDataReader.cs: Change base classes and override methods.
940 * SqlConnection.cs: Change base classes and override methods.
941 * SqlCommandBuilder.cs: Change base classes and override methods.
942 * SqlCommand.cs: Change base classes and override necessary methods.
944 2004-10-14 Umadevi S <sumadevi@novell.com>
945 * SqlCommand.cs - Implemented the clone method correctly.
948 2004-10-06 Umadevi S <sumadevi@novell.com>
949 * ISqlNoticationReceiver.cs - changed namespace
950 * Added files SqlNotificationType.cs, SqlNotificationInfo.cs, SqlNotificationSource.cs
952 2004-09-24 Umadevi S <sumadevi@novell.com>
953 * SqlTransaction.cs - Dispose will not call rollback incase the transaction is not open.
955 2004-09-14 Sebastien Pouliot <sebastien@ximian.com>
957 * SqlClientPermission.cs: Added internal constructor accepting an Sql
958 ClientPermissionAttribute parameter (using base class protected ctor).
959 * SqlClientPermissionAttribute.cs: Copy now use the new SqlClient
960 Permission constructor.
962 2004-09-13 Sebastien Pouliot <sebastien@ximian.com>
964 * SqlClientPermission.cs: Mostly completed (needs tests).
965 * SqlClientPermissionAttribute.cs: Completed.
967 2004-09-02 Umadevi S <sumadevi@novell.com>
968 * SqlCommand.cs - ExecuteNonQuery to return -1 incase of executing a storedprocedure
970 2004-08-16 Gert Driesen <drieseng@users.sourceforge.net>
972 * SqlConnection.cs: added TODO on ConnectionString for keywords
973 that are not yet implemented. check value of Integrated Security
974 keyword, check value of bool keywords, improve error reporting
975 for int keywords, added support for the following keyword
976 synonyms : APP, TIMEOUT, NETWORK, PERSISTSECURITYINFO, WSID,
977 LANGUAGE, USER. Throw NotImplementedException when encrypt keyword
978 is set to true, enlist keyword is set to false or attachdbfilename
979 keyword (or one of its synonyms) is set. Added FIXME for PERSIST
980 SECURITY INFO keyword, throwing a NotImplementedException here
981 would break lots of apps
983 2004-08-16 Gert Driesen <drieseng@users.sourceforge.net>
985 * SqlConnection.cs - spaces to tabs
987 2004-08-12 Sureshkumar T <tsureshkumar@novell.com>
988 * SqlDataReader.cs - In Close method, the remaining resultsets are drained
989 out, to read output parameters & to avoid stream overlap
991 2004-06-30 Umadevi S <sumadevi@novell.com>
992 * SqlCommand.cs : In the Execute Method the commandbehavior parameters were ignored correct
995 2004-06-22 Atsushi Enomoto <atsushi@ximian.com>
997 * SqlCommandBuilder.cs : Avoid cast exception caused by DbNull.
999 2004-06-18 Umadevi S <sumadevi@novell.com>
1000 * SqlCommand.cs - ExecuteNonQuery returns -1 in all cases except
1001 insert,update or delete.
1003 2004-06-18 Umadevi S <sumadevi@novell.com>
1004 * SqlConnection.cs - handled null being passed as a connectionstring
1005 - checked for minimal set of parameters in connectionstring.
1006 - handled unrecogonized keywords similar to MS.NET
1008 2004-06-17 Umadevi S <sumadevi@novell.com>
1009 * SqlTransaction.cs - fixed multiple rollbacks being called causes invalidoperationexception
1011 2004-06-04 Gert Driesen <drieseng@users.sourceforge.net>
1013 * SqlClientPermission.cs: removed extra CreateInstance
1016 2004-06-02 Gert Driesen <drieseng@users.sourceforge.net>
1018 * SQLDebugging.cs: added missing attributes, marked ctor
1019 public to match MS.NET
1021 2004-05-22 Atsushi Enomoto <atsushi@ximian.com>
1023 * SqlClientPermission.cs : don't use chained obsolete .ctor.
1025 2004-05-20 Gert Driesen (drieseng@users.sourceforge.net)
1027 * SqlClientPermissionAttribute.cs: change AllowMultiple and
1028 Inherited to match .NET
1030 2004-05-20 Umadevi S <sumadevi@novell.com>
1032 * Fixed bug 58406- implemented the hasrow method, test program used
1033 to test with the bug report
1035 2004-05-13 Umadevi S <sumadevi@novell.com>
1037 * SqlClientPermission.cs, SqlDataReader.cs - added missing methods with TODO tags
1038 * SqlCommand.cs, SqlDataAdapter.cs - implemented ToolboxItemAttribute
1039 * SQLDebugging.cs - Added new file with a TODO tag
1041 2004-04-05 Lluis Sanchez Gual <lluis@ximian.com>
1043 * SqlConnection.cs: Use connection pool implemented in Mono.Data.Tds.
1045 2004-04-01 Lluis Sanchez Gual <lluis@ximian.com>
1047 * SqlDataReader.cs: Null values are now represented with DBNull instances.
1050 2004-03-14 Tim Coleman <tim@timcoleman.com>
1051 * SqlCommand.cs SqlConnection.cs:
1052 Changes from two patches by Andres Taylor
1053 <andres@rotselleri.com>
1055 2004-03-12 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1057 * SqlParameter.cs: DO NOT USE the consts scheme if types can be referenced directly!
1059 2004-01-10 Atsushi Enomoto <atsushi@ximian.com>
1061 * SqlClientPermission.cs : Fixed NET_2_0 build related to
1062 obsolete attribute problem (see DbDataPermission.cs)
1064 2003-12-28 Tim Coleman <tim@timcoleman.com>
1066 Stubbed out this class.
1068 2003-12-23 Tim Coleman <tim@timcoleman.com>
1070 Improved connection string parsing. See
1071 System.Data.Common.DbConnectionString for source.
1073 2003-12-21 Tim Coleman <tim@timcoleman.com>
1075 Enable Integrated Security
1077 2003-12-19 Tim Coleman <tim@timcoleman.com>
1078 * ISqlNotificationReceiver.cs SqlResultSet.cs:
1080 * SqlClientPermission.cs:
1081 Fix constructor for 1.2
1083 2003-12-04 John Luke <jluke@cfl.rr.com>
1085 * SqlXmlTextReader.cs: applied patch from Chris Masters <neeeeeep@bigpond.com>
1086 fix peek so it checks if it is at the end and also to make sure that if Read()
1087 advances the position past the end of the localBuffer array, it makes
1088 a call to GetNextBuffer(). fixes bug #40253 System.IndexOutOfRangeException when
1089 using SqlCommand.ExecuteXmlReader()
1091 2003-11-20 Joerg Rosenkranz <JoergR@voelcker.com>
1093 * SqlConnection (SetDefaultConnectionParameters):
1094 Changed default value of WORKSTATION ID to reflect real
1095 host name instead of "localhost".
1097 2003-11-16 Ben Maurer <bmaurer@users.sourceforge.net>
1099 * SqlParameterCollection.cs (Clear): Clear needs to take
1100 the parameter out of the collection so that it can be used
1105 2003-10-03 Diego Caravana <diego@toth.it>
1107 * SqlCommand.cs: no change.
1109 * SqlConnection.cs (Close): Added checks for null instance
1112 * SqlParameter.cs (Direction): Now handles parameters of type
1113 ReturnValue and InputOutput.
1115 * SqlParameterCollection.cs (IndexOf(string)): Search for
1116 SqlParameter object in list is done by obtaining ParameterName
1117 attribute, not directly through list.IndexOf().
1119 2003-08-22 Duncan Mak <duncan@ximian.com>
1121 * SqlCommand.cs (ExecuteNonQuery): Return
1122 Connection.Tds.RecordsAffected if it is successful. Patch from
1123 Jörg Rosenkranz <joergr@voelcker.com>.
1125 This is part of a fix to bug #40315.
1127 2003-08-20 Duncan Mak <duncan@ximian.com>
1129 * SqlConnectionPool.cs (ReleaseConnection): A patch from Joerg
1130 Rosenkranz <JoergR@voelcker.com>. Currently, if a connection is
1131 closed by an external event (network problem, etc.) it is pushed
1132 back into the connection pool. The next Open call retrieves this
1133 invalid connection which leads to exceptions when executing
1136 This patch fixes this problem. This closes bug #47429.
1138 2003-07-04 Miguel de Icaza <miguel@ximian.com>
1140 * SqlDataReader.cs: Added extra information to the exceptions
1141 thrown by all the GetXXXX methods.
1143 2003-03-15 Daniel Morgan <danmorg@sc.rr.com>
1145 * SqlConnection.cs: if Server in the ConnectionString
1146 is set to "(local", use "localhost" as the hostname
1149 2003-03-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1151 * SqlException.cs: implemented GetObjectData ().
1153 2003-02-16 Daniel Morgan <danmorg@sc.rr.com>
1155 * ChangeLog: added this file
1157 * SqlConnection.cs: - parse data source for 3 possible uses:
1159 "Server=hostname\\instancename",
1160 "Server=hostname,port" and open the connection based on the
1161 resulting server name and port.
1162 - Added support for named instances
1163 by discovery of the sql server tcp port via the sql monitor (udp port 1434)
1164 thanks to Phillip Jerkins (Phillip.Jerkins@morgankeegan.com) contribution.
1165 Also, thanks to Gonzalo and Tim for their help with timeouts.