1 2009-08-17 Veerapuram Varadhan <vvaradhan@novell.com>
4 * SqlConnection.cs (Open): Use Tds80 also in case of non-pooling
7 2009-08-01 Gert Driesen <drieseng@users.sourceforge.net>
9 * SqlParameter.cs (ConvertToFrameworkType): Only wrap FormatException
12 2009-07-30 Gert Driesen <drieseng@users.sourceforge.net>
14 * SqlParameter.cs: Modified ConvertToFrameworkType to only perform
15 conversion if type of value is different from "system type". Make
16 DbTypeMapping hashtable available on 1.0 profile, and add missing
17 mappings. Wrap FormatException adding information on conversion
20 2009-07-30 Veerapuram Varadhan <vvaradhan@novell.com>
22 * SqlDataAdapter.cs (*Command): Build fix for 1.x profile.
24 2009-07-30 Veerapuram Varadhan <vvaradhan@novell.com>
26 ** Fixes the issue reported by Scott <Scott.Fluto@cmgl.ca> in Mono-list
27 * SqlParameter.cs (ConvertToFrameworkType): Return String.Empty
28 in case of zero-length strings.
30 2009-07-30 Veerapuram Varadhan <vvaradhan@novell.com>
32 * SqlDataAdapter.cs (IDbDataAdapter.*Command): Remove over-engineered
33 checks as the base implementation is changed.
35 2009-07-29 Veerapuram Varadhan <vvaradhan@novell.com>
37 * SqlDataAdapter.cs (IDbDataAdapter.*Command): Revert some of my earlier
38 changes. Validate the incoming value as we use bases' implementation now.
41 * SqlParameter.cs (GetSqlValue): Simplify handling of SqlValue and SqlTypes.
42 (SqlTypeToFramworkType): Added support for SqlChars and SqlBytes types.
44 2009-07-28 Gert Driesen <drieseng@users.sourceforge.net>
46 * SqlCommand.cs: Ensure connection is closed if CloseConnection
47 behavior is set, and reader could not be created.
49 2009-07-28 Gert Driesen <drieseng@users.sourceforge.net>
51 * More clean up of fix for #522624/#507663
52 * SqlCommandBuilder.cs: Appropriately handle rowUpdatingHandler and
53 more cleanup for 2.0 profile.
55 2009-07-26 Veerapuram Varadhan <vvaradhan@novell.com>
57 * SqlParameter.cs (get/set_SqlValue, GetSqlValue): Return the appropriately
58 SQL-typed param value. Fixes failing provider tests.
60 2009-07-28 Gert Driesen <drieseng@users.sourceforge.net>
62 * SqlCommand.cs: Ensure connection is closed if CloseConnection
63 behavior is set, and reader could not be created.
65 2009-07-26 Gert Driesen <drieseng@users.sourceforge.net>
67 * SqlParameter.cs: Improved support for SqlValue and SqlTypes.
69 2009-07-25 Veerapuram Varadhan <vvaradhan@novell.com>
71 * SqlDataReader.cs: Added new schema fields to the schema row.
72 Fixes a failing provider test.
74 2009-07-25 Veerapuram Varadhan <vvaradhan@novell.com>
77 * SqlCommandBuilder.cs: From 2.0 onwards, use base's
78 implementation for handling auto-generated commands.
79 * SqlDataAdapter.cs: -- ditto --
81 2009-07-15 Veerapuram Varadhan <vvaradhan@novell.com>
83 * SqlParameter.cs: Implement the "internal" FrameworkDbType,
84 DbTypeMapping and SystemType properties.
86 2009-05-08 Veerapuram Varadhan <vvaradhan@novell.com>
88 ** Fixes #497715 - based on a patch by Jonas Larsson
89 <jonas.larsson@manodo.se>
91 * SqlDataReader.cs: (GetSqlXml): Handle Xml types for TDS 8/8.1
93 * SqlParameter.cs: Map XML type properly.
95 2009-04-28 Gonzalo Paniagua Javier <gonzalo@novell.com>
97 * SqlConnection.cs: if the error causes a disconnection from the
98 server, close the data stream.
100 2009-03-23 Veerapuram Varadhan <vvaradhan@novell.com>
102 * SqlDataReader.cs (GetSchemaRowType): Correctly handle Tds 8 BigInt type.
104 2009-02-02 Veerapuram Varadhan <vvaradhan@novell.com>
106 * SqlConnection.cs: Use TDS 8 instead of TDS 7
108 2009-01-24 Gonzalo Paniagua Javier <gonzalo@novell.com>
110 * SqlConnection.cs: adapt to changes in TdsConnectionPool.
111 Don't Close() on every error.
113 2009-01-17 Gert Driesen <drieseng@users.sourceforge.net>
115 * SqlParameter.cs: Renamed isDirty to typeChanged; it is now now only
116 used to indicate whether the type of the parameter has been updated.
117 Changed signature of 'updated' argument in GetFrameworkValue to ref
118 to match delegate in Mono.Data.Tds, and convert value if either the
119 type has been changed or if the 'updated' argument is true (which -
120 for now - means the value or size changed in TdsMetaParameter).
121 Various fixes for derived parameters:
122 - parameter_type 2 means InputOutput parameter, while 3 means Output;
123 - Only set precision and scale is type is decimal.
124 - When type has variable size, then also set Size.
126 2009-01-04 Gert Driesen <drieseng@users.sourceforge.net>
128 * SqlDataReader.cs: Added GetSchemaRowDbType overload for
129 getting sql type of a given column (identified using its
130 ordinal). Modified GetBytes to throw SqlNullValueException
131 (2.0 profile) or return 0 (1.0 profile) when reading bytes
132 sequentially. Added support for non-sequentially reading
133 text and ntext columns using GetBytes. Modified GetChar
134 to throw a NotSupportedException to match MS.
136 2009-01-04 Gert Driesen <drieseng@users.sourceforge.net>
138 * SqlCommandBuilder.cs (RefreshSchema): Clear commands.
140 2009-01-03 Gert Driesen <drieseng@users.sourceforge.net>
142 * SqlDataReader.cs: Removed unused dataTypeNames, and
143 unnecessary initializations. Added missing reader state
144 and row state checks. Fixed implementation of HasRows.
145 Modified type of DataType to object on 1.0 profile for
146 compatibility with .NET 1.x. Do not mark (Big)VarBinary
147 or ((Big)Binary as long, as unit tests show that IsLong
148 is for wide (unicode) data types. Fixed type data for
149 SmallDateTime and SmallMoney data types. Improved support
150 for bigint data type (using TDS 7.0).
152 2009-01-03 Gert Driesen <drieseng@users.sourceforge.net>
154 * SqlCommand.cs: Moved connection reset before the throw.
155 Improved exception message.
157 2009-01-03 Gert Driesen <drieseng@users.sourceforge.net>
159 * SqlCommandBuilder.cs: Only set SourceColumn for null check
160 parameters on the 2.0 profile, and set SourceVersion to
161 Current on 1.0 profile. Changed accessibility of RefreshSchema
162 to public, and do not immediately create commands. Removed
165 2009-01-03 Gert Driesen <drieseng@users.sourceforge.net>
167 * SqlParameter.cs: When setting ParameterName or sourceName to
168 null, use a zero-length string instead. On 1.0 profile, only
169 infer type from value if value is not null or DBNull. Store
170 raw value in TdsMetadataParameter, and use delegate to convert
171 it to framework type (when necessary). Improve implementation
172 of SqlValue (still needs lots of work).
174 2009-01-03 Gert Driesen <drieseng@users.sourceforge.net>
176 * SqlCommandBuilder.cs: Added missing checks for QuotePrefix and
177 QuoteSuffix on 2.0 profile, and return a zero-length string if
178 not set (or set to null) on 1.0 profile. Do not allow the value
179 of CatalogSeparator and SchemaSeparator to be changed from '.'.
180 Modified generated SQL to match MS. Added implementation for
181 QuoteIdenfifier. Modified parameters to match MS.
182 * SqlParameter.cs (SqlValue): Keep Value in sync.
184 2008-12-20 Gonzalo Paniagua Javier <gonzalo@novell.com>
186 * SqlParameter.cs: I removed these 2 lines I added 2 patches ago in
187 the previous patch...
189 2008-12-20 Gonzalo Paniagua Javier <gonzalo@novell.com>
191 * SqlConnection.cs: close the connection on error.
193 2008-12-16 Gonzalo Paniagua Javier <gonzalo@novell.com>
195 * SqlParameter.cs: don't allocate error strings until the error
196 actually happens. Compare types instead of strings. Use a Hashtable
199 2008-12-12 Gonzalo Paniagua Javier <gonzalo@novell.com>
201 * SqlParameter.cs: use the underlying type when inferring the type for
204 2008-11-13 Veerapuram Varadhan <vvaradhan@novell.com>
206 * SqlCommand.cs: When a timeout exception occurs, reset the
207 connection before re-using it. Fixes connection corrupted errors
208 on timeout exception.
210 2008-11-09 Gert Driesen <drieseng@users.sourceforge.net>
212 * SqlConnection.cs (ClearPool): Added null check.
214 2008-11-09 Gert Driesen <drieseng@users.sourceforge.net>
216 * SqlConnection.cs: In Close, also remove reference to pool. In Open,
217 set TdsConnection.Pooling to false for a non-pooled connection.
218 Fixed ClearAllPools to no longer create a new connection for each
219 pool. In ClearPool, perform a lookup of the pool to clear using
220 the connectionstring as the pool field may refer to another pool
221 (as the connectionstring may have changed).
223 2008-09-30 Veerapuram Varadhan <vvaradhan@novell.com>
225 * SqlDataReader.cs (GetSqlXml): Handle the scenario when Sql
226 Server 2005 returns Xml column type as NTEXT when called from
227 clients that use < TDS 8.0 protocol.
229 2008-09-20 Veerapuram Varadhan <vvaradhan@novell.com>
231 * SqlCommand.cs (DeriveParameters): Simplification of the if-else loop.
233 2008-09-20 Veerapuram Varadhan <vvaradhan@novell.com>
235 * SqlCommand.cs (DeriveParameters): Handle no square brackets
236 case in schema/procedure names.
238 2008-09-17 Veerapuram Varadhan <vvaradhan@novell.com>
240 * SqlCommand.cs (DeriveParameters): Escape/trim both
241 schema/procedure names before passing as parameter values.
243 2008-09-13 Atsushi Enomoto <atsushi@ximian.com>
245 * SqlDependency.cs : wrong namespace.
247 2008-08-14 Gert Driesen <drieseng@users.sourceforge.net>
249 * SqlConnection.cs: Use constants for min/max values. When value is
250 zero-length string, then fallback to default value for boolean and
251 integer backed properties. Throw ArgumentException when min pool size
252 exceeds max pool size. Check whether value for 'MARS' is a bool.
253 The 'user instance' property is 2.0 only.
255 2008-08-14 Gert Driesen <drieseng@users.sourceforge.net>
257 * SqlConnection.cs: Convert keywords to lowercase instead of uppercase
258 to avoid further case changes in exception messages.
260 2008-07-28 Gert Driesen <drieseng@users.sourceforge.net>
262 * SqlCommand.cs (ExecuteReader): When behavior includes SingleRow,
263 then only return a single result. Fixes bug #412569.
265 2008-07-28 Gert Driesen <drieseng@users.sourceforge.net>
267 * SqlCommand.cs: Fixed order of arguments for ArgumentException in
269 * SqlConnection.cs (ChangePassword): Do not allow empty connection
270 string. Updated exception messages.
272 2008-07-28 Gert Driesen <drieseng@users.sourceforge.net>
274 * SqlCommand.cs: Fixed param name in ArgumentException for negative
275 CommandTimeout to match MS. On 2.0 profile, throw NRE in Prepare
276 when connection is NULL. In Prepare, return immediately after
277 connection check (2.0 only) for stored procedures, or when no
278 parameters are added. Added check to see if transaction is
279 associated with same connection as the command and updated
282 2008-07-28 Gert Driesen <drieseng@users.sourceforge.net>
284 * SqlCommand.cs: Added bool argument to ValidateCommand to specify
285 whether an async method is being executed. Minor changes to exception
286 messages to match MS.
288 2008-07-28 Gert Driesen <drieseng@users.sourceforge.net>
290 * SqlCommand.cs: Avoid NRE in CloseDataReader when connection is NULL.
291 Fixes bug #412584. Removed unused moreResults eargument from
292 CloseDataReader. Removed behavior argument from Execute, and have it
293 use the behavior field instead. In ValidateCommand, throw
294 InvalidOperationException instead of NRE when Connection is NULL.
295 * SqlDataReader.cs: Sync with SqlCommand's CloseDataReader signature
298 2008-07-28 Gert Driesen <drieseng@users.sourceforge.net>
300 * SqlCommand.cs: (Transaction): On the 1.0 profile, do not allow
301 Transaction to be set when a reader is open for the current connection.
304 2008-07-28 Gert Driesen <drieseng@users.sourceforge.net>
306 * SqlCommand.cs (Connection): Do not throw InvalidOperationException
307 if transaction is in progress. Fixes bug #412576. On 1.0 profile, throw
308 InvalidOperationException when a reader is open for the current
309 connection. Do not set transaction to NULL when changing connection,
310 instead set it to null in Transaction when transaction is no longer
313 2008-07-28 Gert Driesen <drieseng@users.sourceforge.net>
315 * SqlConnection.cs: Use null as default value for connectionString
316 field. Remove Init method, as initialization is done in
317 SetDefaultConnectionParameters. Initialize parms in
318 SetDefaultConnectionParameters to avoid calling Reset on newly
319 initialized collection. In Dispose (bool), also invoke base.Dispose if
320 SqlConnection was already disposed. Fixes bug #412571.
322 2008-07-28 Gert Driesen <drieseng@users.sourceforge.net>
324 * SqlConnection.cs (ChangeState): Return immediately when new state
325 equals original state. Fixes bug #412574. Removed extra whitespace.
327 2008-07-23 Veerapuram Varadhan <vvaradhan@novell.com>
329 * SqlDataReader.cs (NextResult): Memleak fix - mark datatypeNames
330 array to be GCed along with schemaTable.
332 2008-07-23 Veerapuram Varadhan <vvaradhan@novell.com>
334 * SqlDataReader.cs: Do not generate schemaTable unless otherwise
335 asked for; use command.Tds.Columns instead. Improves performance
338 2008-07-10 Veerapuram Varadhan <vvaradhan@novell.com>
341 * SqlCommand.cs (GetOutputParameters): Update parameter values iff
342 parameter direction is InputOutput or Output.
344 2008-07-06 Gert Driesen <drieseng@users.sourceforge.net>
346 * SqlException.cs: Modified HResult/ErrorCode to match MS. Removed
347 unused FromTdsInternalException overload. Removed unnecessary check
348 for Errors.Count. Minor code formatting.
350 2008-07-03 Rodrigo Kumpera <rkumpera@novell.com>
352 * SqlConnection.cs: Remove connStringParameters as nobody uses it.
354 2008-07-01 Rodrigo Kumpera <rkumpera@novell.com>
356 * SqlDataReader.cs: Do all column accesses with int indexes.
358 2008-07-01 Rodrigo Kumpera <rkumpera@novell.com>
360 * SqlDataReader.cs (GetSchemaTable): All column index are constants,
363 2008-07-01 Rodrigo Kumpera <rkumpera@novell.com>
365 * SqlDataReader.cs (GetSchemaTable): Calculate column indexes
366 outside of the row loop.
368 2008-07-01 Marek Habersack <mhabersack@novell.com>
370 * SqlDataReader.cs: use named properties in TdsDataColumn for the
373 2008-06-30 Zoltan Varga <vargaz@gmail.com>
375 * SqlDataReader.cs: Allocate 'schemaTable' lazily.
376 (GetSchemaValue): Avoid some hash table lookups
378 2008-06-27 Zoltan Varga <vargaz@gmail.com>
380 * SqlDataReader.cs (ConstructSchemaTable): Avoid unneccessary reflection calls.
382 2008-06-23 Veerapuram Varadhan <vvaradhan@novell.com>
384 * SqlDependency.cs: New
386 2008-06-12 Veerapuram Varadhan <vvaradhan@novell.com>
388 Patch by Christian Hergert <christian.hergert@gmail.com>
389 * SqlConnection.cs (Open): Do not reset the connection as it is already
390 done in the TdsConnectionPool itself.
392 2008-06-12 Marek Habersack <mhabersack@novell.com>
394 * SqlParameterCollection.cs: this [int] must check the range and
395 throw an exception if necessary.
397 * SqlCommand.cs: throw IOEX when stored procedure is not found in
398 DeriveParameters. All procedures in MS SQL will report at least
399 one parameter - the return value.
401 2008-06-10 Veerapuram Varadhan <vvaradhan@novell.com>
403 * SqlConnection.cs: TdsConnectionPool.GetConnectionPool() now returns
404 IDictionary<TKey, TValue>.
406 2008-06-09 Ankit Jain <jankit@novell.com>
408 * SqlCommand.cs: Use Tds instead of ITds now.
409 * SqlConnection.cs: Likewise.
411 2008-05-27 Gert Driesen <drieseng@users.sourceforge.net>
413 * SqlConnection.cs: Added support for '.' as alias for localhost.
414 Improve exception message when TCP/IP protocol is not enabled.
416 2008-05-17 Gert Driesen <drieseng@users.sourceforge.net>
418 * SqlDataReader.cs (GetInt64): Removed workaround for TDS 7.0 handling
419 of bigint column type as this is handled in Mono.Data.Tds.
421 2008-05-14 Marek Habersack <mhabersack@novell.com>
423 * SqlConnection.cs: added support for USER INSTANCE keyword in the
426 2008-04-22 Veerapuram Varadhan <vvaradhan@novell.com>
429 * SqlCommand.cs: Handle exceptions sanely and do not close
430 connection on TdsTimeoutException.
432 2008-04-21 Gert Driesen <drieseng@users.sourceforge.net>
434 * SqlBulkCopyColumnMappingCollection.cs: Changed argument names to
435 match MS. Code formatting.
436 * SqlCommand.cs: Changed argument names to match MS. Code formatting.
437 Do not include explicit IDbCommand implementation on 2.0 profile.
438 * SqlCommandBuilder.cs: Changed argument names to match MS. Code
440 * SqlDataReader.cs: Changed argument names to match MS. Code
442 * SqlParameterCollection.cs: Do not include IList, ICollection and
443 IDataParameterCollection explicit interface implementation on 2.0
444 profile. Code formatting.
445 * SqlConnection.cs: Changed argument names to match MS.
446 * SqlDataAdapter.cs: Changed argument names to match MS.
447 * SqlTransaction.cs: Do not include explicit interface implementation
448 of IDbTransaction.Connection on 2.0 profile. Code formatting.
450 2008-04-19 Robert Jordan <robertj@gmx.net>
452 * SqlParameterCollection.cs (AddRange(SqlParameter[])):
453 Fix endless recursion.
455 2008-04-08 Marek Habersack <mhabersack@novell.com>
457 * SqlConnection.cs: TCP port discovery via UDP port 1434 should
458 honor the timeout specified in the connection string (or the
459 default one). In some environments 100 microseconds might not be
460 enough to discover the port.
462 2008-04-01 Marek Habersack <mhabersack@novell.com>
464 * SqlParameter.cs: ConvertToFrameworkType must handle empty
465 strings gracefully - a DBNull.Value must be returned in this
468 * SqlCommand.cs: DeriveParameters should split the stored
469 procedure name into the schema name and procedure name before
470 querying its parameters.
472 2008-03-03 Ankit Jain <jankit@novell.com>
474 * SqlClientMetaDataCollectionNames.cs: Set the field values.
476 2007-10-21 Gert Driesen <drieseng@users.sourceforge.net>
478 * SqlCommand.cs: Use ExceptionHelper.CheckEnumValue for enum checks.
480 2007-10-20 Gert Driesen <drieseng@users.sourceforge.net>
482 * SqlCommand.cs: Added constant for default CommandTimeout, instead
483 of using a magic number. Avoid unnecessary initialization. Fixed
484 default value for DesignTimeVisible. Return zero-length string if
485 CommandText is null. Use ExceptionHelper.InvalidEnumValueException
486 to avoid code duplication. Spaces to tabs and code formatting.
487 * SqlConnection.cs: Use different default package size on 2.0 profile.
488 Added constants for default values, instead of using magic numbers.
489 Avoid unnecessary initialization. In PacketSize, return default or
490 configured packet size when connection is not open. Use
491 ExceptionHelper.ConnectionClosed instead of local method. Removed
492 use of some hardcoded values in SetDefaultConnectionParameters, and
493 use Environment.MachineName as default WorkstationId instead of
494 DNS host name. Code formatting.
495 * SqlDataAdapter.cs: In default ctor, set SelectCommand to null.
496 Avoid unnecessary initializations. Use direct assignment in
497 IDbDataAdapter implementation. Fixed exception message for negative
498 UpdateBatchSize. In Dispose override, make sure to invoke base
501 2007-10-19 Gert Driesen <drieseng@users.sourceforge.net>
503 * SqlTransaction.cs: Clear connection in commit. In IsolationLevel,
504 throw IOE if transaction is no longer open.
506 2007-10-19 Gert Driesen <drieseng@users.sourceforge.net>
508 * SqlTransaction.cs: Avoid unnecessary initialization. Remove
509 isRolledBack since its essentially the same as isOpen. Use
510 ExceptionHelper.TransactionNotUsable instead of duplicating code.
511 On 2.0 profile, ignore call to Rollback when transaction was already
514 2007-10-18 Gert Driesen <drieseng@users.sourceforge.net>
516 * SqlConnection.cs: Avoid unnecessary initialization. Use string.Empty
517 for assigning zero-length string, and use String.Length to check for
518 zero-length string. Added support for IsolationLevel.Snapshot.
519 Added StructuredTypeMembers schema collection and restrictions. Fixed
520 table name for MetaDataCollections collection. Implemented
521 DataSourceInformation collection. Added missing data types (probably
522 introduced in 2.0 SP1). In GetSchema, throw InvalidOperationException
523 if connection is closed and throw NotImplementedException for
524 StructuredTypeMembers collection.
526 2007-10-18 Gert Driesen <drieseng@users.sourceforge.net>
528 * SqlConnection.cs: On 1.0 profile, IsolationLevel.Unspecified is
529 not valid. On 2.0 profile, when IsolationLevel.Unspecified is passed
530 make sure to also set SqlTransaction.IsolationLevel to
531 ReadCommitted. Modified exceptions to match MS.
533 2007-10-17 Nagappan <anagappan@novell.com>
535 * SqlParameter.cs (ConvertToFrameworkType): Added SqlDbType.Image.
537 2007-10-17 Nagappan <anagappan@novell.com>
539 * SqlConnection.cs: BeginTransaction does not handle
540 IsolationLevel.Unspecified, so the default is set as ReadCommited.
541 Thanks to Jerome Haltom <wasabi@larvalstage.net> for this patch. Fixes
543 * SqlTransaction.cs: If transaction count is greater then 0 then roll back.
544 Thanks to Jerome Haltom <wasabi@larvalstage.net> for this patch. Fixes
547 2007-10-15 Gert Driesen <drieseng@users.sourceforge.net>
549 * SqlException.cs: Do not hide Message on 2.0 profile. Fixes bug
552 2007-10-08 Marek Safar <marek.safar@gmail.com>
554 * SqlParameterCollection.cs (SetParameter): Fixed missing cast.
556 2007-09-27 Nagappan A <anagappan@novell.com>
558 * SqlConnection.cs: Added MonoTODO appropriately.
560 2007-09-26 Nagappan A <anagappan@novell.com>
562 * SqlCommandBuilder.cs: Code alignment.
564 2007-09-25 Nagappan A <anagappan@novell.com>
566 * SqlInitialCatalogConverter.cs, SqlDataSourceConverter.cs:
567 NetworkLibraryConverter.cs: Added new files.
569 * SqlParameter.cs: 2.0 attribute changes.
571 * SqlDataAdapter.cs: 2.0 attribute changes.
573 * SqlConnectionStringBuilder.cs: 2.0 attribute changes.
575 * SqlConnection.cs (ClearAllPools, ClearPool): Implemented 2.0
576 APIs, other 2.0 attribute changes.
578 * SqlCommandBuilder.cs (GetSchemaTable, InitializeCommand):
579 Implemented 2.0 APIs, other 2.0 attribute changes.
581 * SqlBulkCopyColumnMappingCollection.cs: Added constructor, 2.0
582 API compatibility changes.
584 * SqlException.cs: 2.0 attribute changes.
586 2007-08-13 Nagappan A <anagappan@novell.com>
588 * SqlConnection.cs (ConnectionString): 2.0 compatibility changes.
590 * SqlDataReader.cs (IsCommandBehavior): Fixed spelling mistake of
592 (Dispose): 2.0 compatibility changes.
594 * SqlBulkCopy.cs (SqlRowsCopied): Fixed spelling mistake of the
596 (RowsCopied): Generates event when NotifyAfter is set.
598 * SqlCommandBuilder.cs (Dispose, RefreshSchema): 2.0 compatibility
601 * SqlClientFactory.cs (CreateDataSourceEnumerator): Removed bogus
604 * SqlException.cs (Message): 2.0 compatibility changes.
606 2007-08-06 Nagappan A <anagappan@novell.com>
608 * SqlCommand.cs, SqlDataReader.cs, SqlConnection.cs: When the
609 server resets the connection, now the client code also disconnects
610 the session and remove the instance from pool. Fixes bug # 81933.
612 2007-07-31 Nagappan A <anagappan@novell.com>
614 * SqlCommand.cs (Transaction, Connection): IDbCommand Transaction
615 and Connection can be set to null. Fixes bug 82189.
617 2007-07-23 Nagappan A <anagappan@novell.com>
619 * SqlCommandBuilder.cs (ApplyParameterInfo, GetParameterName):
620 (GetParameterPlaceholder): Implemented 2.0 missing APIs.
622 2007-07-22 Nagappan A <anagappan@novell.com>
624 * SqlBulkCopy.cs (NotifyAfter): Implemented 2.0 property.
625 (GetColumnMetaData, GenerateColumnMetaData):
626 (ValidateColumnMapping): Implemented private method's to generate
627 and validate SqlBulkCopy headers.
628 (BulkCopyToServer): Private method to actually do the bulk copy
630 (WriteToServer): Implemented 2.0 missing overloaded methods.
631 (IDisposable.Dispose): Implemented 2.0 missing method.
633 * SqlBulkCopyColumnMappingCollection.cs (Add, CopyTo): Implemented
635 (Item): Implemented missing property.
637 * SqlBulkCopyColumnMapping.cs: Modified the implementation of
638 Constructors to use property.
640 * SqlDataReader.cs (GetSqlXml, IsCommandBehaviour): Added 2.0
642 (Connection): Added missing property.
644 * SqlParameter.cs (SetSqlDbType, ConvertToFrameworkType): Modified
645 method as internal from private.
647 * SqlConnection.cs: Fixed 2.0 missing feature.
649 * SqlException.cs: Fixed 2.0 missing feature.
651 * SqlClientPermission.cs: Fixed 2.0 missing feature.
653 2007-07-01 Gert Driesen <drieseng@users.sourceforge.net>
655 * ISqlNotificationReceiver.cs: Removed.
656 * SqlClientFactory.cs: Use SqlDataSourceEnumerator from S.D.Sql and
657 marked method todo. Avoid unnessary casts. Code formatting.
658 * SqlCommand.cs: Explicit interface implementation of IDbCommand not
659 necessary on 2.0 profile. Fixes API mismatches. Avoid unnecessary
660 casts. Code formatting.
661 * SqlConnection.cs: Also use RecommendAsConfigurable instead of
662 SettingBindableAttribute on 2.0. Use StateChange event from base class
663 on 2.0. Only explicitly implement IDbConnection methods on 1.0, since
664 these are implemented by base class on 2.0 profile. Removed extra
665 explicit implementation of IDisposable since the base class implements
666 this. Code formatting.
667 * SqlDataAdapter.cs: Dispose (bool) override not necessary on 2.0
668 profile. Stubbed ICloneable.Clone. Fixes API mismatches.
669 * SqlDataReader.cs: On 2.0, IDisposable.Dispose is implemented by
670 DbDataReader. Only 1.0 profile, explicitly implemented IEnumerable
671 GetEnumerator. Code formatting.
672 * SqlDataSourceEnumerator.cs: Removed.
673 * SQLDebugging.cs: Marked sealed on 2.0. Code formatting.
674 * SqlNotificationAuthType.cs: Removed.
675 * SqlNotificationInfo.cs: Added missing fields. Code formatting.
676 * SqlNotificationSource.cs: Added missing fields. Code formatting.
677 * SqlNotificationTransports.cs: Removed.
678 * SqlNotificationType.cs: Added missing Unknown field. Code formatting.
679 * SqlParameter.cs: Removed Browsable and EditorBrowsable attributes
680 from Precision and Scale. Fixes API mismatches. Code formatting fixes.
681 * SqlTransaction.cs: On 2.0 profile, Dispose method is exposed by
682 base class. Fixes API mismatches. Code formatting fixes.
684 2007-06-21 Nagappan A <anagappan@novell.com>
686 * SqlConnection.cs: Fixed compiler warning.
688 2007-06-11 Nagappan A <anagappan@novell.com>
690 * SqlConnection.cs (ParseDataSource): Adds tcp support in
691 connection string. Fixes bug # 80975.
693 * SqlCommand.cs (Dispose): On disposing the command object, don't
694 dispose connection and transaction.
696 2007-06-06 Nagappan A <anagappan@novell.com>
698 * SqlCommand.cs, SqlConnectionStringBuilder.cs, SqlConnection.cs:
699 Fixed 1.0 and 2.0 extras, errors as stated in class status page.
701 * SqlDataAdapter.cs, SqlParameter.cs:Fixed 1.0 and 2.0 extras,
702 errors as stated in class status page.
704 * SqlBulkCopyColumnMappingCollection.cs: Fixed 1.0 and 2.0 extras,
705 errors as stated in class status page.
707 2007-05-30 Nagappan A <anagappan@novell.com>
709 * SqlParameter.cs (SqlParameter): Updated constructor to use the
710 new TDS RPC implementation.
711 Fixed missing attributes.
712 (SetDbType): Added new case for sql_variant type.
713 (ConvertToFrameworkType): Implemented new private method to
714 convert the data type to framework type.
716 * SqlParameterCollection.cs: Fixed missing attributes and
717 implemented missing methods.
719 * SqlConnection.cs: Fixed missing attributes.
721 * SqlConnectionStringBuilder.cs: Certain attributes are missing or
722 its value or they are not appropriate. Fixed them.
724 * SqlDataReader.cs (GetData): Method is available only under 1.0
727 * SqlCommandBuilder.cs: Certain attributes are available only
728 under 2.0 profile, so moved them inside ifdef.
730 * SqlCommand.cs: Certain attributes are available only under 2.0
731 profile, so moved them inside ifdef.
733 * SqlBulkCopy.cs: Added new stubs.
735 * SqlBulkCopyColumnMappingCollection.cs: Added new stubs.
737 2007-05-29 Nagappan A <anagappan@novell.com>
739 * SqlCommand.cs (Dispose): Command.Dispose closing
740 connection. Fixes bug # 81710. Thanks to AMC <amc1999@gmail.com>
743 2007-05-10 Nagappan A <anagappan@novell.com>
745 * SqlClientMetaDataCollectionNames.cs: Fixed incorrect constructor
748 * SqlConnectionStringBuilder.cs: Fixed missing attributes.
750 2007-05-09 Igor Zelmanovich <igorz@mainsoft.com>
752 * SqlConnectionStringBuilder.cs: added MonoNotSupported attribute.
754 2007-04-03 Amit Biswas <amit@amitbiswas.com>
756 * SqlDataReader.cs (GetSqlBytes, GetProviderSpecificFieldType)
757 (GetProviderSpecificValue, GetProviderSpecificValues): Implemented
760 * SqlParameter.cs (XmlSchemaCollectionDatabase): Implemented missing property
761 (XmlSchemaCollectionName): Implemented missing property
762 (XmlSchemaCollectionOwningSchema): Implemented missing property
763 (SourceColumnNullMapping): Existing implementation was not correct, Replaced the implementation
764 (.ctor): Implemented mising constructor new in .net 2.0
766 * SqlErrorCollection.cs (CopyTo): Implemented missing API
768 * SqlParameter.cs (InferSqlType): Corrected bug related to default values of
770 (ResetSqlDbType): Implemented missing API
771 (ResetDbType): Implemented missing API
773 2007-03-09 Amit Biswas <amit@amitbiswas.com>
775 * SqlParameterCollection.cs (CopyTo): Implemented missing API
777 2007-04-02 Nagappan A <anagappan@novell.com>
779 * SqlParameter.cs: Variable name fix.
781 2007-03-20 Nidhi Rawal <rawalnidhi_rawal@yahoo.com>
783 * SqlClientFactory.cs: Added two using directives.
784 (CreateConnectionStringBuilder): Implemented the method.
785 (CreatePermission): Implemented the property.
787 * SqlCommand.cs: Added one using directive.
788 (Clone): Implemented the method.
789 (Dispose): Implemented the method.
790 (BeginExecuteXmlReader): Implemented the method.
792 * SqlCommandBuilder.cs (QuoteIdentifier): Implemented the method.
793 (UnquoteIdentifier): Implemented the method.
795 * SqlConnection.cs (ChangePassword): Implemented the method.
797 2007-03-19 Nidhi Rawal <rawalnidhi_rawal@yahoo.com>
799 * SqlClientFactory.cs (CanCreateDataSourceEnumerator): Implemented
802 * SqlCommand.cs (Notification): Implemented the property.
803 (NotificationAutoEnlist): Implemented the property.
805 * SqlDataReader.cs (VisibleFieldCount): Implemented the property.
807 * SqlConnectionStringBuilder.cs (TrustServerCertificate): Implemented
809 (TypeSystemVersion): Implemented the property.
810 (UserInstance): Implemented the property.
811 (ContextConnection): Implemented the property.
813 * SqlConnection.cs (FireInfoMessageEventOnUserErrors): Implemented
815 (StatisticsEnabled): Implemented the property.
817 * SqlDataAdapter.cs (UpdateBatchSize): Implemented the property.
819 * SqlParameter.cs: Implemented one attribute.
821 2007-03-16 Andreia Gaita <avidigal@novell.com>
823 * SqlParameter.cs: Move isVariableSizeType flag to TdsMetaParameter
824 so that the TdsMetaParameter can validate itself for valid size / values.
825 * SqlCommand.cs (Execute): Call Validate on TdsMetaParameter.
827 2007-03-14 Nagappan A <anagappan@novell.com>
829 * SqlCommand.cs (CommandType): Exception type thrown in 2.0
830 profile is different than 1.0, ArgumentOutOfRangeException.
831 (Connection): Exception type thrown in 2.0 profile is different
832 than 1.0, ArgumentOutOfRangeException.
833 (Execute): If Size property is 0 for String and Binary type, then
834 throw InvalidOperationException.
835 (ValidateCommand): Exception type thrown in 2.0 profile is
836 different than 1.0, NullReferenceException.
838 2007-03-09 Nagappan A <anagappan@novell.com>
840 * SqlDataReader.cs: Fixed syntax erros reported in class status
843 2007-03-09 Andreia Gaita <avidigal@novell.com>
845 * SqlCommand.cs (ExecuteScalar): Fix returned value for
846 stored procedure calls to return the first column of the
847 first row produced by the proc.
849 2007-03-08 Nagappan A <anagappan@novell.com>
851 * SqlCommand.cs (CloseDataReader): Checks whether the SQL
852 connection is created or not.
854 2007-03-07 Andreia Gaita <avidigal@novell.com>
856 * SqlCommand.cs (ExecuteScalar): when calling stored procedures,
857 implement support for return of output values in the parameter
860 2007-02-16 Nidhi Rawal <rawalnidhi_rawal@yahoo.com>
862 * SqlParameter.cs (CompareInfo): Implemented the property
864 (LocaleId): Written the property LocaleId.
865 (SqlValue): Written the propert SqlValue.
867 2007-02-15 Nidhi Rawal <rawalnidhi_rawal@yahoo.com>
869 * SqlCommand.cs: Added some attributes which were not implemented
870 for .NET 2.0 and removed extra attribute which are not there in
873 * SqlCommandBuilder.cs: Added some attributes that were not
874 implemented for .NET 2.0.
876 * SqlParameterCollection.cs: Added some attributes that were
877 not implemented for .NET 2.0.
879 * SqlConnectionStringBuilder.cs: Added some attributes that
880 were not implemented for .NET 2.0.
882 * SqlConnection.cs: Added attribute that was not implemented
885 * SqlParameter.cs: Added some attributes which were not
886 implemented for .NET 2.0 and removed some extra attributes which
887 are not there in .NET 2.0
889 2007-02-09 Nagappan A <anagappan@novell.com>
891 * SqlConnection.cs (SetConnectionString): Fixes bug # 80712. A
894 2007-01-08 Nagappan A <anagappan@novell.com>
896 * SqlTransaction.cs (Dispose): Fixed compliation warning.
898 * SqlDataReader.cs (GetValues): Length of elements to be copied was
899 decided based on the argument array passed, which caused a bug, if
900 the length of given array is more than actual column values.
902 * SqlCommandBuilder.cs (CatalogSeparator, SchemaSeparator)
903 (CatalogLocation): Implemented missing properties.
904 (CreateDeleteCommand, CreateInsertCommand, CreateUpdateCommand):
905 Modified private methods to take bool flag. If true, add actual
906 parameter name instead of p1, p2 etc.
907 (CreateParameter): Added overloaded private method to create
908 parameter with the actual column name.
909 (GetUpdateCommand, GetDeleteCommand, GetInsertCommand):
910 Implemented missing overloaded methods.
911 (SetRowUpdatingHandler): Implemented missing protected method.
913 * SqlCommand.cs: Fixed compilation warning. Removed bogus
916 2006-12-05 Nagappan A <anagappan@novell.com>
918 * SqlCommand.cs (Execute): If sql2 length is greater than 0, then
919 add ';' and the respective sql2 string and then execute the
920 string. Fixes bug # 79880.
922 2006-08-30 Nagappan A <anagappan@novell.com>
924 * SqlConnection.cs: Implemented SqlConnection.GetSchema ().
926 2006-09-08 Konstantin Triger <kostat@mainsoft.com>
928 * SqlClientFactory.cs: implemented SqlClientFactory.CreateConnection ().
930 2006-07-13 Senganal T <tsenganal@novell.com>
932 * SqlClientFactory.cs SqlCommand.cs SqlConnectionFactory.cs
933 SqlClientPermission.cs SqlParameterCollection.cs SqlDataReader.cs
934 SqlConnection.cs SqlParameter.cs SqlTransaction.cs :
937 2006-05-31 Gert Driesen <drieseng@users.sourceforge.net>
939 * SqlConnection.cs: Removed extra destructor, as destructor on
940 System.ComponentModel.Component already calls Dispose.
941 * SqlParameter.cs: Removed explicit interface implementation of
942 IDataParameter.ParameterName.
944 2006-05-26 Senganal T <tsenganal@novell.com>
947 - InferSqlType : if value is null or DBNull.Value, retain the
948 current parameter type.
950 2006-04-18 Senganal T <tsenganal@novell.com>
953 - SetConnectionString : set the pareameter to default values
954 if connection string is empty or null
955 - Open : Raise InvalidOperationException if Connection String
957 - Dispose : Test exception not raised if dispose called on a
958 connection with empty connection string
960 slight modification of the patch by Jonel Rienton
962 2006-04-07 Senganal T <tsenganal@novell.com>
964 * SqlCommandBuilder.cs :
965 * CreateDeleteCommand ()
966 * CreateUpdateCommand ()
967 * CreateInsertCommand ()
968 - Changed the signature. Do not need DataRow parameter
969 as the Query generated is parametric.
970 - Correct the null-check term in the WhereClause, set the
971 correct properties for null-check parameter
973 - Modified the generated query to match the query as
974 generated by 2.0. We now ignore null-check in the
975 whereclause if the Column does not allow nulls.
976 * ctor () : Set QuotePrefix and QuoteSuffix for 2.0 profile
977 * GetUpdateCommand ()
978 * GetInsertCommand ()
979 * GetDeleteCommand ()
980 - Do not create new command everytime. Create only if
982 * RefreshSchema : Reset the commands.
984 2006-02-17 Chris Toshok <toshok@ximian.com>
986 * SqlCommand.cs, SqlCommandBuilder.cs, SqlConnection.cs,
987 SqlDataAdapter.cs: remove DataSysDescription attributes for >= 2.0
989 2006-02-17 Chris Toshok <toshok@ximian.com>
991 * SqlDataReader.cs: remove VisibleFieldCount property.
993 2006-02-10 Senganal T <tsenganal@novell.com>
995 - GetBytes : Read binary/blob/clob data sequentially when
996 CommandBehavior is set to SequentialAcccess
997 - GetChars : Read String/clob data sequentially when CommandBehavior
998 is set to SequentialAccess
1000 - ExecuteReader : set SequentialAccess property on TDS
1001 - CloseDataReader : Reset the command behavior
1003 2006-01-27 Senganal T <tsenganal@novell.com>
1005 * SqlCommandBuilder.cs :
1006 - Modified CreateUpdateCommand,CreateDeleteCommand , to not include
1007 column name in the query if its a expression col.
1008 Also, modified the queries to match the generated queries in ms.net
1010 - Modifed Prepare, to check if Parameter is explicitly initialized
1012 - Added CheckIfInitialized : Checks if datatype is explicitly set and
1013 non-zero size is set for variable datatypes.
1014 * SqlDataReader.cs :
1015 - Added code for GetSqlBinary ()
1016 - Fixed GetFieldCount ()
1017 - Added more checks and exceptions.
1019 2006-01-17 Senganal T <tsenganal@novell.com>
1021 * SqlCommandBuilder.cs
1022 - Modified CreateNewCommand () : Clean up any existing parameter list
1023 before reusing the command.Fixes #77225
1025 2005-11-24 Senganal T <tsenganal@novell.com>
1028 - Modifications to get the correct Packet Size
1030 2005-11-21 Senganal T <tsenganal@novell.com>
1032 * SqlClientFactory.cs
1033 * SqlCommandBuilder.cs
1034 * SqlParameterCollection.cs
1040 Added stubs and other changes for ADO.NET 2.0 compatibility
1042 2005-11-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1044 * SqlConnection.cs: don't throw NotImplementedException when using
1045 'PERSIST SECUTIRY INFO'. Just do nothing.
1047 2005-10-27 Senganal T <tsenganal@novell.com>
1052 Made changes so that the number of rows affected can be got directly from
1053 Tds regardsless of the type of query.Fixes bug #75698
1055 2005-10-19 Senganal T <tsenganal@novell.com>
1057 * SqlConnection.cs (SetProperties) :
1058 - Added support for AttachDBFileName
1060 2005-10-19 Senganal T <tsenganal@novell.com>
1062 * SqlException.cs (Constructor)
1063 - Modified the constructor, so that the message parameter
1064 of base class is not the same as that of the Exception message.
1067 2005-09-24 Sureshkumar T <tsureshkumar@novell.com>
1069 * SqlParameterCollection.cs (AddWithValue): added method. patch
1070 from awaddell@fnfr.com (Andy Waddell).
1072 2005-09-21 Senganal T <tsenganal@novell.com>
1075 * SqlConnection.cs :
1076 - Set the correct Default Values for Parameters.
1077 - Added Argument Checks (where missing) for the Properties and
1078 throw the correct exception on error.
1079 - Modified SetDefaultParameters() to make sure that the parameters
1080 are all reset to default values everytime it is called.
1081 - Modified SetProperties() to take into account the order of the
1082 keywords in the ConnectionString.
1084 SqlConnection Fixes for the failing sqlserver connected-mode testcases
1085 in ProviderTest/System.Data.SqlClient/SqlConnectionTest.cs
1087 2005-09-21 Senganal T <tsenganal@novell.com>
1089 * SqlTransaction.cs : Modifed the Rollback() method, so that
1090 connection can be used for another transaction after the previous
1091 transaction is rolled back. fixes bug 75904
1093 2005-09-02 Umadevi S <sumadevi@novell.com>
1095 * Removed SqlResultSet.cs file
1097 2005-08-26 Sureshkumar T <tsureshkumar@novell.com>
1099 * SqlConnection.cs (Open): enable sp_reset_connection.
1101 2005-08-25 Sureshkumar T <tsureshkumar@novell.com>
1103 * SqlCommandBuilder.cs: BuildInformation (): continue on columns
1104 who don't have basetablename.
1106 2005-08-12 Daniel Morgan <danielmorgan@verizon.net>
1108 * SqlCommandBuilder.cs: update command builder based on
1109 OdbcCommandBuilder latest changes to fix regression
1112 2005-08-05 Sureshkumar T <tsureshkumar@novell.com>
1114 * SqlCommandBuilder.cs: Set SourceVersion property to the created
1115 parameters as it is used by the Adapter's Update method.
1117 2005-07-22 Sureshkumar T <tsureshkumar@novell.com>
1119 * SqlCommandBuilder.cs, SqlParameterCollection.cs,
1120 SqlConnection.cs, SqlParameter.cs:
1121 - updated attributes & attribute descriptions to match with
1124 2005-07-16 Daniel Morgan <danielmorgan@verizon.net>
1126 * SqlCommandBuilder.cs: CreateUpdateCommand should get the current value, not
1127 the orginal value when setting one of the SET variables
1129 2005-07-15 Sureshkumar T <tsureshkumar@novell.com>
1131 * SqlCommandBuilder.cs:
1132 - set_DataAdapter: unsubscribe event if DataAdapter is reset.
1133 - CreateInsertCommand, CreateUpdateCommand, CreateDeleteCommand:
1134 if column mapping is missing, use the source column name. use
1135 proper version to get the data.
1136 - RowUpdatingHandler: set status to continue to actually process
1139 2005-07-04 Ben Maurer <bmaurer@ximian.com>
1141 * SqlError.cs: Patch from dezelin@gmail.com to fix serialization.
1143 2005-06-29 Sureshkumar T <tsureshkumar@novell.com>
1145 * SqlConnection.cs: Open (): catch TdsInternalException and throw
1147 * SqlException.cs: code re-organised to pass message as well with
1150 2005-06-23 Sureshkumar T <tsureshkumar@novell.com>
1152 * SqlConnectionStringBuilder.cs: simplified multiple keyword
1153 mappings and allowed-key checking. fixed Item, Remove,
1154 ContainsKey, ShoudSerialize, TryGetValue implementations.
1156 2005-06-21 Sureshkumar T <tsureshkumar@novell.com>
1158 * SqlConnectionStringBuilder.cs: Connection String Builder class
1159 for SqlClient Data Provider.
1161 2005-06-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1163 * SqlParameter.cs: moved the 'using S.D.SqlTypes' out of NET_2_0. Fixes
1166 2005-06-01 Sureshkumar T <tsureshkumar@novell.com>
1168 * SqlParameter.cs: Parameter's value can be SqlTypes. Convert to
1169 framework type to pass to TDS layer. Fixes bug #75044.
1171 2005-05-24 Umadevi S <sumadevi@novell.com>
1172 * fixed some 2.0 and 1.0 specific fields/attributes for various classes.
1173 * Added SqlClientMetaDataCollectionNames.cs, Implemented some 2.0
1174 properties for SqlParameterCollection for the bulkcopy feature.
1177 2005-05-20 Kornél Pál <http://www.kornelpal.hu/>
1179 * Fixed Bug #53169 - SqlDataReader incorrectly returns bigint as decimal
1180 Note: The fix works around the limitations of TDS 7.0 to avoid this
1181 difference between Mono and .NET Framework TDS 8.0 should be used instead.
1183 2005-05-20 Umadevi S <sumadevi@novell.com>
1185 * Fixed Bug 74948 - SqlParameter also takes DBNull Value.
1186 Correct some attributes stuff of 1.1 and 2.0 for SqlParameter.cs
1188 2005-05-20 Umadevi S <sumadevi@novell.com>
1190 * Continuing on implementation for bulkcopy and notification
1191 Added files SqlNotificationEventArgs.cs, OnChangeEventHandler.cs
1192 Modified SqlRowUpdatingEventArgs.cs
1194 2005-05-19 Umadevi S <sumadevi@novell.com>
1196 * For implementation of bulkcopy and notifications added files
1197 SqlBulkCopyOptions.cs,SqlBulkCopyColumnMapping.cs,SqlNotificationAuthType.cs
1198 SqlNotificationTransports.cs,SqlRowsCopiedEventArgs.cs, SqlRowsCopiedEventHandler.cs
1200 2005-05-19 Umadevi S <sumadevi@novell.com>
1202 * Corrected types,enum values of SqlNotificationType,SqlNotificationSource,
1203 SqlNotificationInfo and added new method in SqlRowUpdatingEventArgs.cs
1204 (For implementation of bulkcopy/notifications)
1206 2005-04-19 Sureshkumar T <tsureshkumar@novell.com>
1208 * SqlDataReader.cs: NextResult (): Re-create schema table for each
1209 result set. don't re-use, as it may be referenced from somewhere.
1211 2005-04-07 Sureshkumar T <tsureshkumar@novell.com>
1212 Ankit Jain <radical@corewars.org>
1214 * SqlConnection.cs: Implemented additional connection string
1215 property "Asynchronous Processing".
1217 * SqlCommand.cs: Implemented Asynchronous command execution API.
1219 * SqlAsyncState.cs: A internal state object for asynchronous
1222 * SqlAsyncResult.cs: Added. Class to hold result for asynchronous
1225 2005-03-28 Sureshkumar T <tsureshkumar@novell.com>
1227 * SqlCommand.cs: Execute: Add a semicolon at the end of
1228 CommandText. Multiple semicolon's are not being complained.
1232 2005-03-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1234 * SqlConnection.cs: added a finalizer for correct implementation of the
1235 IDisposable pattern.
1237 2005-03-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1239 * SqlException.cs: make it serialization-compatible with MS. Patch by
1240 Aleksandar Dezelin. Closes bug #73596.
1242 2005-03-08 Sureshkumar T <tsureshkumar@novell.com>
1244 * SqlDataReader.cs: Call base constructor with CommandBehavior
1245 parameter instead of passing DbCommand object. The internal base
1246 class with DbCommand Parameter is removed.
1248 2005-03-07 Sureshkumar T <tsureshkumar@novell.com>
1250 * SqlCommand.cs : Set CommandBehavior on
1251 ExecuteReader,ExecuteScalar,ExecuteNonQuery. This is used in
1254 This fixes bug #73252.
1256 2005-03-03 Sureshkumar T <tsureshkumar@novell.com>
1258 * SqlClientFactory.cs: While creating command, create using
1259 DbConnectionFactory as DbConnectionBase.CreateDbCommand needs to
1260 have a connection factory.
1262 * SqlConnection.cs: Added an internal constructor which takes
1263 DbConnectionFactory.
1265 * SqlConnectionFactory.cs: Added. Concrete class for abstract
1266 factory DbConnectionFactory.
1268 2005-02-22 Sureshkumar T <tsureshkumar@novell.com>
1270 * SqlDataReader.cs: GetBytes: return the length of the data if
1271 output buffer is null. if not, copy the values to buffer and
1272 return the bytes actually read.
1274 2005-02-02 Sureshkumar T <tsureshkumar@novell.com>
1277 - Database: return db name from database if connection open,
1278 otherwise take from connection string.
1279 - Set default values for parameters in the constructor itself.
1280 - Dangling else problem with Close method.
1281 - reset values of parms (TdsConnectionParameters) rather setting
1283 - set disposed to false in Open method
1284 - finally call base.Dispose in Dispose (bool)
1286 Fixes nunit regressions SqlConnectionTest:DefaultConnectionValues
1287 and SqlConnectionTest:DatabaseSynonyms.
1289 2005-01-27 Sureshkumar T <tsureshkumar@novell.com>
1291 * SqlCommand.cs (DeriveParameters): Change parameter name to
1293 * SqlParameter.cs (SqlParameter (object [])) : call default
1294 constructor to create Tds.Metaparameter.
1298 2005-01-03 Sureshkumar T <tsureshkumar@novell.com>
1300 * SqlCommand.cs: Fixed bug #68973. Reset Tds.RecordsAffected to 0
1301 for each execute statement.
1303 2004-11-25 Sureshkumar T <tsureshkumar@novell.com>
1305 These changes are for 2.0 profile only. These changes implement
1306 the generic data base access technique using Provider Factory
1307 Implementation. These classes need to be dervided from abstract
1308 base classes so that the corresponding factory classes are
1309 created when calling CreateCommand, CreateParameter, etc.
1311 * SqlClientFactory.cs: Provider Factory class Implementaion for SqlServer
1312 * SqlParameter.cs: Change base classes and override methods.
1313 * SqlParameterCollection.cs: Change base classes and override methods.
1314 * SqlTransaction.cs: Change base classes and override methods.
1315 * SqlDataSourceEnumerator.cs: DataSource Enumerator stubs.
1316 * SqlDataReader.cs: Change base classes and override methods.
1317 * SqlConnection.cs: Change base classes and override methods.
1318 * SqlCommandBuilder.cs: Change base classes and override methods.
1319 * SqlCommand.cs: Change base classes and override necessary methods.
1321 2004-10-14 Umadevi S <sumadevi@novell.com>
1322 * SqlCommand.cs - Implemented the clone method correctly.
1325 2004-10-06 Umadevi S <sumadevi@novell.com>
1326 * ISqlNoticationReceiver.cs - changed namespace
1327 * Added files SqlNotificationType.cs, SqlNotificationInfo.cs, SqlNotificationSource.cs
1329 2004-09-24 Umadevi S <sumadevi@novell.com>
1330 * SqlTransaction.cs - Dispose will not call rollback incase the transaction is not open.
1332 2004-09-14 Sebastien Pouliot <sebastien@ximian.com>
1334 * SqlClientPermission.cs: Added internal constructor accepting an Sql
1335 ClientPermissionAttribute parameter (using base class protected ctor).
1336 * SqlClientPermissionAttribute.cs: Copy now use the new SqlClient
1337 Permission constructor.
1339 2004-09-13 Sebastien Pouliot <sebastien@ximian.com>
1341 * SqlClientPermission.cs: Mostly completed (needs tests).
1342 * SqlClientPermissionAttribute.cs: Completed.
1344 2004-09-02 Umadevi S <sumadevi@novell.com>
1345 * SqlCommand.cs - ExecuteNonQuery to return -1 incase of executing a storedprocedure
1347 2004-08-16 Gert Driesen <drieseng@users.sourceforge.net>
1349 * SqlConnection.cs: added TODO on ConnectionString for keywords
1350 that are not yet implemented. check value of Integrated Security
1351 keyword, check value of bool keywords, improve error reporting
1352 for int keywords, added support for the following keyword
1353 synonyms : APP, TIMEOUT, NETWORK, PERSISTSECURITYINFO, WSID,
1354 LANGUAGE, USER. Throw NotImplementedException when encrypt keyword
1355 is set to true, enlist keyword is set to false or attachdbfilename
1356 keyword (or one of its synonyms) is set. Added FIXME for PERSIST
1357 SECURITY INFO keyword, throwing a NotImplementedException here
1358 would break lots of apps
1360 2004-08-16 Gert Driesen <drieseng@users.sourceforge.net>
1362 * SqlConnection.cs - spaces to tabs
1364 2004-08-12 Sureshkumar T <tsureshkumar@novell.com>
1365 * SqlDataReader.cs - In Close method, the remaining resultsets are drained
1366 out, to read output parameters & to avoid stream overlap
1368 2004-06-30 Umadevi S <sumadevi@novell.com>
1369 * SqlCommand.cs : In the Execute Method the commandbehavior parameters were ignored correct
1372 2004-06-22 Atsushi Enomoto <atsushi@ximian.com>
1374 * SqlCommandBuilder.cs : Avoid cast exception caused by DbNull.
1376 2004-06-18 Umadevi S <sumadevi@novell.com>
1377 * SqlCommand.cs - ExecuteNonQuery returns -1 in all cases except
1378 insert,update or delete.
1380 2004-06-18 Umadevi S <sumadevi@novell.com>
1381 * SqlConnection.cs - handled null being passed as a connectionstring
1382 - checked for minimal set of parameters in connectionstring.
1383 - handled unrecogonized keywords similar to MS.NET
1385 2004-06-17 Umadevi S <sumadevi@novell.com>
1386 * SqlTransaction.cs - fixed multiple rollbacks being called causes invalidoperationexception
1388 2004-06-04 Gert Driesen <drieseng@users.sourceforge.net>
1390 * SqlClientPermission.cs: removed extra CreateInstance
1393 2004-06-02 Gert Driesen <drieseng@users.sourceforge.net>
1395 * SQLDebugging.cs: added missing attributes, marked ctor
1396 public to match MS.NET
1398 2004-05-22 Atsushi Enomoto <atsushi@ximian.com>
1400 * SqlClientPermission.cs : don't use chained obsolete .ctor.
1402 2004-05-20 Gert Driesen (drieseng@users.sourceforge.net)
1404 * SqlClientPermissionAttribute.cs: change AllowMultiple and
1405 Inherited to match .NET
1407 2004-05-20 Umadevi S <sumadevi@novell.com>
1409 * Fixed bug 58406- implemented the hasrow method, test program used
1410 to test with the bug report
1412 2004-05-13 Umadevi S <sumadevi@novell.com>
1414 * SqlClientPermission.cs, SqlDataReader.cs - added missing methods with TODO tags
1415 * SqlCommand.cs, SqlDataAdapter.cs - implemented ToolboxItemAttribute
1416 * SQLDebugging.cs - Added new file with a TODO tag
1418 2004-04-05 Lluis Sanchez Gual <lluis@ximian.com>
1420 * SqlConnection.cs: Use connection pool implemented in Mono.Data.Tds.
1422 2004-04-01 Lluis Sanchez Gual <lluis@ximian.com>
1424 * SqlDataReader.cs: Null values are now represented with DBNull instances.
1427 2004-03-14 Tim Coleman <tim@timcoleman.com>
1428 * SqlCommand.cs SqlConnection.cs:
1429 Changes from two patches by Andres Taylor
1430 <andres@rotselleri.com>
1432 2004-03-12 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1434 * SqlParameter.cs: DO NOT USE the consts scheme if types can be referenced directly!
1436 2004-01-10 Atsushi Enomoto <atsushi@ximian.com>
1438 * SqlClientPermission.cs : Fixed NET_2_0 build related to
1439 obsolete attribute problem (see DbDataPermission.cs)
1441 2003-12-28 Tim Coleman <tim@timcoleman.com>
1443 Stubbed out this class.
1445 2003-12-23 Tim Coleman <tim@timcoleman.com>
1447 Improved connection string parsing. See
1448 System.Data.Common.DbConnectionString for source.
1450 2003-12-21 Tim Coleman <tim@timcoleman.com>
1452 Enable Integrated Security
1454 2003-12-19 Tim Coleman <tim@timcoleman.com>
1455 * ISqlNotificationReceiver.cs SqlResultSet.cs:
1457 * SqlClientPermission.cs:
1458 Fix constructor for 1.2
1460 2003-12-04 John Luke <jluke@cfl.rr.com>
1462 * SqlXmlTextReader.cs: applied patch from Chris Masters <neeeeeep@bigpond.com>
1463 fix peek so it checks if it is at the end and also to make sure that if Read()
1464 advances the position past the end of the localBuffer array, it makes
1465 a call to GetNextBuffer(). fixes bug #40253 System.IndexOutOfRangeException when
1466 using SqlCommand.ExecuteXmlReader()
1468 2003-11-20 Joerg Rosenkranz <JoergR@voelcker.com>
1470 * SqlConnection (SetDefaultConnectionParameters):
1471 Changed default value of WORKSTATION ID to reflect real
1472 host name instead of "localhost".
1474 2003-11-16 Ben Maurer <bmaurer@users.sourceforge.net>
1476 * SqlParameterCollection.cs (Clear): Clear needs to take
1477 the parameter out of the collection so that it can be used
1482 2003-10-03 Diego Caravana <diego@toth.it>
1484 * SqlCommand.cs: no change.
1486 * SqlConnection.cs (Close): Added checks for null instance
1489 * SqlParameter.cs (Direction): Now handles parameters of type
1490 ReturnValue and InputOutput.
1492 * SqlParameterCollection.cs (IndexOf(string)): Search for
1493 SqlParameter object in list is done by obtaining ParameterName
1494 attribute, not directly through list.IndexOf().
1496 2003-08-22 Duncan Mak <duncan@ximian.com>
1498 * SqlCommand.cs (ExecuteNonQuery): Return
1499 Connection.Tds.RecordsAffected if it is successful. Patch from
1500 Jörg Rosenkranz <joergr@voelcker.com>.
1502 This is part of a fix to bug #40315.
1504 2003-08-20 Duncan Mak <duncan@ximian.com>
1506 * SqlConnectionPool.cs (ReleaseConnection): A patch from Joerg
1507 Rosenkranz <JoergR@voelcker.com>. Currently, if a connection is
1508 closed by an external event (network problem, etc.) it is pushed
1509 back into the connection pool. The next Open call retrieves this
1510 invalid connection which leads to exceptions when executing
1513 This patch fixes this problem. This closes bug #47429.
1515 2003-07-04 Miguel de Icaza <miguel@ximian.com>
1517 * SqlDataReader.cs: Added extra information to the exceptions
1518 thrown by all the GetXXXX methods.
1520 2003-03-15 Daniel Morgan <danmorg@sc.rr.com>
1522 * SqlConnection.cs: if Server in the ConnectionString
1523 is set to "(local", use "localhost" as the hostname
1526 2003-03-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1528 * SqlException.cs: implemented GetObjectData ().
1530 2003-02-16 Daniel Morgan <danmorg@sc.rr.com>
1532 * ChangeLog: added this file
1534 * SqlConnection.cs: - parse data source for 3 possible uses:
1536 "Server=hostname\\instancename",
1537 "Server=hostname,port" and open the connection based on the
1538 resulting server name and port.
1539 - Added support for named instances
1540 by discovery of the sql server tcp port via the sql monitor (udp port 1434)
1541 thanks to Phillip Jerkins (Phillip.Jerkins@morgankeegan.com) contribution.
1542 Also, thanks to Gonzalo and Tim for their help with timeouts.