1 2010-03-26 Veerapuram Varadhan <vvaradhan@novell.com>
3 * SqlDataAdapter.cs: 2.0 profile changes
5 2009-12-03 Jonathan Pobst <monkey@jpobst.com>
7 * SortOrder.cs: Add enum.
9 2009-10-28 Veerapuram Varadhan <vvaradhan@novell.com>
11 * SqlCommandBuilder.cs (RowUpdatingHandler): Use base version for 2.0 profile.
13 2009-10-14 Jonathan Pryor <jpryor@novell.com>
15 * SqlConnection.cs: Remove EnterpriseServices dependency from the
18 2009-08-17 Veerapuram Varadhan <vvaradhan@novell.com>
21 * SqlConnection.cs (Open): Use Tds80 also in case of non-pooling
24 2009-08-01 Gert Driesen <drieseng@users.sourceforge.net>
26 * SqlParameter.cs (ConvertToFrameworkType): Only wrap FormatException
29 2009-07-30 Gert Driesen <drieseng@users.sourceforge.net>
31 * SqlParameter.cs: Modified ConvertToFrameworkType to only perform
32 conversion if type of value is different from "system type". Make
33 DbTypeMapping hashtable available on 1.0 profile, and add missing
34 mappings. Wrap FormatException adding information on conversion
37 2009-07-30 Veerapuram Varadhan <vvaradhan@novell.com>
39 * SqlDataAdapter.cs (*Command): Build fix for 1.x profile.
41 2009-07-30 Veerapuram Varadhan <vvaradhan@novell.com>
43 ** Fixes the issue reported by Scott <Scott.Fluto@cmgl.ca> in Mono-list
44 * SqlParameter.cs (ConvertToFrameworkType): Return String.Empty
45 in case of zero-length strings.
47 2009-07-30 Veerapuram Varadhan <vvaradhan@novell.com>
49 * SqlDataAdapter.cs (IDbDataAdapter.*Command): Remove over-engineered
50 checks as the base implementation is changed.
52 2009-07-29 Veerapuram Varadhan <vvaradhan@novell.com>
54 * SqlDataAdapter.cs (IDbDataAdapter.*Command): Revert some of my earlier
55 changes. Validate the incoming value as we use bases' implementation now.
58 * SqlParameter.cs (GetSqlValue): Simplify handling of SqlValue and SqlTypes.
59 (SqlTypeToFramworkType): Added support for SqlChars and SqlBytes types.
61 2009-07-28 Gert Driesen <drieseng@users.sourceforge.net>
63 * SqlCommand.cs: Ensure connection is closed if CloseConnection
64 behavior is set, and reader could not be created.
66 2009-07-28 Gert Driesen <drieseng@users.sourceforge.net>
68 * More clean up of fix for #522624/#507663
69 * SqlCommandBuilder.cs: Appropriately handle rowUpdatingHandler and
70 more cleanup for 2.0 profile.
72 2009-07-26 Veerapuram Varadhan <vvaradhan@novell.com>
74 * SqlParameter.cs (get/set_SqlValue, GetSqlValue): Return the appropriately
75 SQL-typed param value. Fixes failing provider tests.
77 2009-07-28 Gert Driesen <drieseng@users.sourceforge.net>
79 * SqlCommand.cs: Ensure connection is closed if CloseConnection
80 behavior is set, and reader could not be created.
82 2009-07-26 Gert Driesen <drieseng@users.sourceforge.net>
84 * SqlParameter.cs: Improved support for SqlValue and SqlTypes.
86 2009-07-25 Veerapuram Varadhan <vvaradhan@novell.com>
88 * SqlDataReader.cs: Added new schema fields to the schema row.
89 Fixes a failing provider test.
91 2009-07-25 Veerapuram Varadhan <vvaradhan@novell.com>
94 * SqlCommandBuilder.cs: From 2.0 onwards, use base's
95 implementation for handling auto-generated commands.
96 * SqlDataAdapter.cs: -- ditto --
98 2009-07-15 Veerapuram Varadhan <vvaradhan@novell.com>
100 * SqlParameter.cs: Implement the "internal" FrameworkDbType,
101 DbTypeMapping and SystemType properties.
103 2009-05-08 Veerapuram Varadhan <vvaradhan@novell.com>
105 ** Fixes #497715 - based on a patch by Jonas Larsson
106 <jonas.larsson@manodo.se>
108 * SqlDataReader.cs: (GetSqlXml): Handle Xml types for TDS 8/8.1
110 * SqlParameter.cs: Map XML type properly.
112 2009-04-28 Gonzalo Paniagua Javier <gonzalo@novell.com>
114 * SqlConnection.cs: if the error causes a disconnection from the
115 server, close the data stream.
117 2009-03-23 Veerapuram Varadhan <vvaradhan@novell.com>
119 * SqlDataReader.cs (GetSchemaRowType): Correctly handle Tds 8 BigInt type.
121 2009-02-02 Veerapuram Varadhan <vvaradhan@novell.com>
123 * SqlConnection.cs: Use TDS 8 instead of TDS 7
125 2009-01-24 Gonzalo Paniagua Javier <gonzalo@novell.com>
127 * SqlConnection.cs: adapt to changes in TdsConnectionPool.
128 Don't Close() on every error.
130 2009-01-17 Gert Driesen <drieseng@users.sourceforge.net>
132 * SqlParameter.cs: Renamed isDirty to typeChanged; it is now now only
133 used to indicate whether the type of the parameter has been updated.
134 Changed signature of 'updated' argument in GetFrameworkValue to ref
135 to match delegate in Mono.Data.Tds, and convert value if either the
136 type has been changed or if the 'updated' argument is true (which -
137 for now - means the value or size changed in TdsMetaParameter).
138 Various fixes for derived parameters:
139 - parameter_type 2 means InputOutput parameter, while 3 means Output;
140 - Only set precision and scale is type is decimal.
141 - When type has variable size, then also set Size.
143 2009-01-04 Gert Driesen <drieseng@users.sourceforge.net>
145 * SqlDataReader.cs: Added GetSchemaRowDbType overload for
146 getting sql type of a given column (identified using its
147 ordinal). Modified GetBytes to throw SqlNullValueException
148 (2.0 profile) or return 0 (1.0 profile) when reading bytes
149 sequentially. Added support for non-sequentially reading
150 text and ntext columns using GetBytes. Modified GetChar
151 to throw a NotSupportedException to match MS.
153 2009-01-04 Gert Driesen <drieseng@users.sourceforge.net>
155 * SqlCommandBuilder.cs (RefreshSchema): Clear commands.
157 2009-01-03 Gert Driesen <drieseng@users.sourceforge.net>
159 * SqlDataReader.cs: Removed unused dataTypeNames, and
160 unnecessary initializations. Added missing reader state
161 and row state checks. Fixed implementation of HasRows.
162 Modified type of DataType to object on 1.0 profile for
163 compatibility with .NET 1.x. Do not mark (Big)VarBinary
164 or ((Big)Binary as long, as unit tests show that IsLong
165 is for wide (unicode) data types. Fixed type data for
166 SmallDateTime and SmallMoney data types. Improved support
167 for bigint data type (using TDS 7.0).
169 2009-01-03 Gert Driesen <drieseng@users.sourceforge.net>
171 * SqlCommand.cs: Moved connection reset before the throw.
172 Improved exception message.
174 2009-01-03 Gert Driesen <drieseng@users.sourceforge.net>
176 * SqlCommandBuilder.cs: Only set SourceColumn for null check
177 parameters on the 2.0 profile, and set SourceVersion to
178 Current on 1.0 profile. Changed accessibility of RefreshSchema
179 to public, and do not immediately create commands. Removed
182 2009-01-03 Gert Driesen <drieseng@users.sourceforge.net>
184 * SqlParameter.cs: When setting ParameterName or sourceName to
185 null, use a zero-length string instead. On 1.0 profile, only
186 infer type from value if value is not null or DBNull. Store
187 raw value in TdsMetadataParameter, and use delegate to convert
188 it to framework type (when necessary). Improve implementation
189 of SqlValue (still needs lots of work).
191 2009-01-03 Gert Driesen <drieseng@users.sourceforge.net>
193 * SqlCommandBuilder.cs: Added missing checks for QuotePrefix and
194 QuoteSuffix on 2.0 profile, and return a zero-length string if
195 not set (or set to null) on 1.0 profile. Do not allow the value
196 of CatalogSeparator and SchemaSeparator to be changed from '.'.
197 Modified generated SQL to match MS. Added implementation for
198 QuoteIdenfifier. Modified parameters to match MS.
199 * SqlParameter.cs (SqlValue): Keep Value in sync.
201 2008-12-20 Gonzalo Paniagua Javier <gonzalo@novell.com>
203 * SqlParameter.cs: I removed these 2 lines I added 2 patches ago in
204 the previous patch...
206 2008-12-20 Gonzalo Paniagua Javier <gonzalo@novell.com>
208 * SqlConnection.cs: close the connection on error.
210 2008-12-16 Gonzalo Paniagua Javier <gonzalo@novell.com>
212 * SqlParameter.cs: don't allocate error strings until the error
213 actually happens. Compare types instead of strings. Use a Hashtable
216 2008-12-12 Gonzalo Paniagua Javier <gonzalo@novell.com>
218 * SqlParameter.cs: use the underlying type when inferring the type for
221 2008-11-13 Veerapuram Varadhan <vvaradhan@novell.com>
223 * SqlCommand.cs: When a timeout exception occurs, reset the
224 connection before re-using it. Fixes connection corrupted errors
225 on timeout exception.
227 2008-11-09 Gert Driesen <drieseng@users.sourceforge.net>
229 * SqlConnection.cs (ClearPool): Added null check.
231 2008-11-09 Gert Driesen <drieseng@users.sourceforge.net>
233 * SqlConnection.cs: In Close, also remove reference to pool. In Open,
234 set TdsConnection.Pooling to false for a non-pooled connection.
235 Fixed ClearAllPools to no longer create a new connection for each
236 pool. In ClearPool, perform a lookup of the pool to clear using
237 the connectionstring as the pool field may refer to another pool
238 (as the connectionstring may have changed).
240 2008-09-30 Veerapuram Varadhan <vvaradhan@novell.com>
242 * SqlDataReader.cs (GetSqlXml): Handle the scenario when Sql
243 Server 2005 returns Xml column type as NTEXT when called from
244 clients that use < TDS 8.0 protocol.
246 2008-09-20 Veerapuram Varadhan <vvaradhan@novell.com>
248 * SqlCommand.cs (DeriveParameters): Simplification of the if-else loop.
250 2008-09-20 Veerapuram Varadhan <vvaradhan@novell.com>
252 * SqlCommand.cs (DeriveParameters): Handle no square brackets
253 case in schema/procedure names.
255 2008-09-17 Veerapuram Varadhan <vvaradhan@novell.com>
257 * SqlCommand.cs (DeriveParameters): Escape/trim both
258 schema/procedure names before passing as parameter values.
260 2008-09-13 Atsushi Enomoto <atsushi@ximian.com>
262 * SqlDependency.cs : wrong namespace.
264 2008-08-14 Gert Driesen <drieseng@users.sourceforge.net>
266 * SqlConnection.cs: Use constants for min/max values. When value is
267 zero-length string, then fallback to default value for boolean and
268 integer backed properties. Throw ArgumentException when min pool size
269 exceeds max pool size. Check whether value for 'MARS' is a bool.
270 The 'user instance' property is 2.0 only.
272 2008-08-14 Gert Driesen <drieseng@users.sourceforge.net>
274 * SqlConnection.cs: Convert keywords to lowercase instead of uppercase
275 to avoid further case changes in exception messages.
277 2008-07-28 Gert Driesen <drieseng@users.sourceforge.net>
279 * SqlCommand.cs (ExecuteReader): When behavior includes SingleRow,
280 then only return a single result. Fixes bug #412569.
282 2008-07-28 Gert Driesen <drieseng@users.sourceforge.net>
284 * SqlCommand.cs: Fixed order of arguments for ArgumentException in
286 * SqlConnection.cs (ChangePassword): Do not allow empty connection
287 string. Updated exception messages.
289 2008-07-28 Gert Driesen <drieseng@users.sourceforge.net>
291 * SqlCommand.cs: Fixed param name in ArgumentException for negative
292 CommandTimeout to match MS. On 2.0 profile, throw NRE in Prepare
293 when connection is NULL. In Prepare, return immediately after
294 connection check (2.0 only) for stored procedures, or when no
295 parameters are added. Added check to see if transaction is
296 associated with same connection as the command and updated
299 2008-07-28 Gert Driesen <drieseng@users.sourceforge.net>
301 * SqlCommand.cs: Added bool argument to ValidateCommand to specify
302 whether an async method is being executed. Minor changes to exception
303 messages to match MS.
305 2008-07-28 Gert Driesen <drieseng@users.sourceforge.net>
307 * SqlCommand.cs: Avoid NRE in CloseDataReader when connection is NULL.
308 Fixes bug #412584. Removed unused moreResults eargument from
309 CloseDataReader. Removed behavior argument from Execute, and have it
310 use the behavior field instead. In ValidateCommand, throw
311 InvalidOperationException instead of NRE when Connection is NULL.
312 * SqlDataReader.cs: Sync with SqlCommand's CloseDataReader signature
315 2008-07-28 Gert Driesen <drieseng@users.sourceforge.net>
317 * SqlCommand.cs: (Transaction): On the 1.0 profile, do not allow
318 Transaction to be set when a reader is open for the current connection.
321 2008-07-28 Gert Driesen <drieseng@users.sourceforge.net>
323 * SqlCommand.cs (Connection): Do not throw InvalidOperationException
324 if transaction is in progress. Fixes bug #412576. On 1.0 profile, throw
325 InvalidOperationException when a reader is open for the current
326 connection. Do not set transaction to NULL when changing connection,
327 instead set it to null in Transaction when transaction is no longer
330 2008-07-28 Gert Driesen <drieseng@users.sourceforge.net>
332 * SqlConnection.cs: Use null as default value for connectionString
333 field. Remove Init method, as initialization is done in
334 SetDefaultConnectionParameters. Initialize parms in
335 SetDefaultConnectionParameters to avoid calling Reset on newly
336 initialized collection. In Dispose (bool), also invoke base.Dispose if
337 SqlConnection was already disposed. Fixes bug #412571.
339 2008-07-28 Gert Driesen <drieseng@users.sourceforge.net>
341 * SqlConnection.cs (ChangeState): Return immediately when new state
342 equals original state. Fixes bug #412574. Removed extra whitespace.
344 2008-07-23 Veerapuram Varadhan <vvaradhan@novell.com>
346 * SqlDataReader.cs (NextResult): Memleak fix - mark datatypeNames
347 array to be GCed along with schemaTable.
349 2008-07-23 Veerapuram Varadhan <vvaradhan@novell.com>
351 * SqlDataReader.cs: Do not generate schemaTable unless otherwise
352 asked for; use command.Tds.Columns instead. Improves performance
355 2008-07-10 Veerapuram Varadhan <vvaradhan@novell.com>
358 * SqlCommand.cs (GetOutputParameters): Update parameter values iff
359 parameter direction is InputOutput or Output.
361 2008-07-06 Gert Driesen <drieseng@users.sourceforge.net>
363 * SqlException.cs: Modified HResult/ErrorCode to match MS. Removed
364 unused FromTdsInternalException overload. Removed unnecessary check
365 for Errors.Count. Minor code formatting.
367 2008-07-03 Rodrigo Kumpera <rkumpera@novell.com>
369 * SqlConnection.cs: Remove connStringParameters as nobody uses it.
371 2008-07-01 Rodrigo Kumpera <rkumpera@novell.com>
373 * SqlDataReader.cs: Do all column accesses with int indexes.
375 2008-07-01 Rodrigo Kumpera <rkumpera@novell.com>
377 * SqlDataReader.cs (GetSchemaTable): All column index are constants,
380 2008-07-01 Rodrigo Kumpera <rkumpera@novell.com>
382 * SqlDataReader.cs (GetSchemaTable): Calculate column indexes
383 outside of the row loop.
385 2008-07-01 Marek Habersack <mhabersack@novell.com>
387 * SqlDataReader.cs: use named properties in TdsDataColumn for the
390 2008-06-30 Zoltan Varga <vargaz@gmail.com>
392 * SqlDataReader.cs: Allocate 'schemaTable' lazily.
393 (GetSchemaValue): Avoid some hash table lookups
395 2008-06-27 Zoltan Varga <vargaz@gmail.com>
397 * SqlDataReader.cs (ConstructSchemaTable): Avoid unneccessary reflection calls.
399 2008-06-23 Veerapuram Varadhan <vvaradhan@novell.com>
401 * SqlDependency.cs: New
403 2008-06-12 Veerapuram Varadhan <vvaradhan@novell.com>
405 Patch by Christian Hergert <christian.hergert@gmail.com>
406 * SqlConnection.cs (Open): Do not reset the connection as it is already
407 done in the TdsConnectionPool itself.
409 2008-06-12 Marek Habersack <mhabersack@novell.com>
411 * SqlParameterCollection.cs: this [int] must check the range and
412 throw an exception if necessary.
414 * SqlCommand.cs: throw IOEX when stored procedure is not found in
415 DeriveParameters. All procedures in MS SQL will report at least
416 one parameter - the return value.
418 2008-06-10 Veerapuram Varadhan <vvaradhan@novell.com>
420 * SqlConnection.cs: TdsConnectionPool.GetConnectionPool() now returns
421 IDictionary<TKey, TValue>.
423 2008-06-09 Ankit Jain <jankit@novell.com>
425 * SqlCommand.cs: Use Tds instead of ITds now.
426 * SqlConnection.cs: Likewise.
428 2008-05-27 Gert Driesen <drieseng@users.sourceforge.net>
430 * SqlConnection.cs: Added support for '.' as alias for localhost.
431 Improve exception message when TCP/IP protocol is not enabled.
433 2008-05-17 Gert Driesen <drieseng@users.sourceforge.net>
435 * SqlDataReader.cs (GetInt64): Removed workaround for TDS 7.0 handling
436 of bigint column type as this is handled in Mono.Data.Tds.
438 2008-05-14 Marek Habersack <mhabersack@novell.com>
440 * SqlConnection.cs: added support for USER INSTANCE keyword in the
443 2008-04-22 Veerapuram Varadhan <vvaradhan@novell.com>
446 * SqlCommand.cs: Handle exceptions sanely and do not close
447 connection on TdsTimeoutException.
449 2008-04-21 Gert Driesen <drieseng@users.sourceforge.net>
451 * SqlBulkCopyColumnMappingCollection.cs: Changed argument names to
452 match MS. Code formatting.
453 * SqlCommand.cs: Changed argument names to match MS. Code formatting.
454 Do not include explicit IDbCommand implementation on 2.0 profile.
455 * SqlCommandBuilder.cs: Changed argument names to match MS. Code
457 * SqlDataReader.cs: Changed argument names to match MS. Code
459 * SqlParameterCollection.cs: Do not include IList, ICollection and
460 IDataParameterCollection explicit interface implementation on 2.0
461 profile. Code formatting.
462 * SqlConnection.cs: Changed argument names to match MS.
463 * SqlDataAdapter.cs: Changed argument names to match MS.
464 * SqlTransaction.cs: Do not include explicit interface implementation
465 of IDbTransaction.Connection on 2.0 profile. Code formatting.
467 2008-04-19 Robert Jordan <robertj@gmx.net>
469 * SqlParameterCollection.cs (AddRange(SqlParameter[])):
470 Fix endless recursion.
472 2008-04-08 Marek Habersack <mhabersack@novell.com>
474 * SqlConnection.cs: TCP port discovery via UDP port 1434 should
475 honor the timeout specified in the connection string (or the
476 default one). In some environments 100 microseconds might not be
477 enough to discover the port.
479 2008-04-01 Marek Habersack <mhabersack@novell.com>
481 * SqlParameter.cs: ConvertToFrameworkType must handle empty
482 strings gracefully - a DBNull.Value must be returned in this
485 * SqlCommand.cs: DeriveParameters should split the stored
486 procedure name into the schema name and procedure name before
487 querying its parameters.
489 2008-03-03 Ankit Jain <jankit@novell.com>
491 * SqlClientMetaDataCollectionNames.cs: Set the field values.
493 2007-10-21 Gert Driesen <drieseng@users.sourceforge.net>
495 * SqlCommand.cs: Use ExceptionHelper.CheckEnumValue for enum checks.
497 2007-10-20 Gert Driesen <drieseng@users.sourceforge.net>
499 * SqlCommand.cs: Added constant for default CommandTimeout, instead
500 of using a magic number. Avoid unnecessary initialization. Fixed
501 default value for DesignTimeVisible. Return zero-length string if
502 CommandText is null. Use ExceptionHelper.InvalidEnumValueException
503 to avoid code duplication. Spaces to tabs and code formatting.
504 * SqlConnection.cs: Use different default package size on 2.0 profile.
505 Added constants for default values, instead of using magic numbers.
506 Avoid unnecessary initialization. In PacketSize, return default or
507 configured packet size when connection is not open. Use
508 ExceptionHelper.ConnectionClosed instead of local method. Removed
509 use of some hardcoded values in SetDefaultConnectionParameters, and
510 use Environment.MachineName as default WorkstationId instead of
511 DNS host name. Code formatting.
512 * SqlDataAdapter.cs: In default ctor, set SelectCommand to null.
513 Avoid unnecessary initializations. Use direct assignment in
514 IDbDataAdapter implementation. Fixed exception message for negative
515 UpdateBatchSize. In Dispose override, make sure to invoke base
518 2007-10-19 Gert Driesen <drieseng@users.sourceforge.net>
520 * SqlTransaction.cs: Clear connection in commit. In IsolationLevel,
521 throw IOE if transaction is no longer open.
523 2007-10-19 Gert Driesen <drieseng@users.sourceforge.net>
525 * SqlTransaction.cs: Avoid unnecessary initialization. Remove
526 isRolledBack since its essentially the same as isOpen. Use
527 ExceptionHelper.TransactionNotUsable instead of duplicating code.
528 On 2.0 profile, ignore call to Rollback when transaction was already
531 2007-10-18 Gert Driesen <drieseng@users.sourceforge.net>
533 * SqlConnection.cs: Avoid unnecessary initialization. Use string.Empty
534 for assigning zero-length string, and use String.Length to check for
535 zero-length string. Added support for IsolationLevel.Snapshot.
536 Added StructuredTypeMembers schema collection and restrictions. Fixed
537 table name for MetaDataCollections collection. Implemented
538 DataSourceInformation collection. Added missing data types (probably
539 introduced in 2.0 SP1). In GetSchema, throw InvalidOperationException
540 if connection is closed and throw NotImplementedException for
541 StructuredTypeMembers collection.
543 2007-10-18 Gert Driesen <drieseng@users.sourceforge.net>
545 * SqlConnection.cs: On 1.0 profile, IsolationLevel.Unspecified is
546 not valid. On 2.0 profile, when IsolationLevel.Unspecified is passed
547 make sure to also set SqlTransaction.IsolationLevel to
548 ReadCommitted. Modified exceptions to match MS.
550 2007-10-17 Nagappan <anagappan@novell.com>
552 * SqlParameter.cs (ConvertToFrameworkType): Added SqlDbType.Image.
554 2007-10-17 Nagappan <anagappan@novell.com>
556 * SqlConnection.cs: BeginTransaction does not handle
557 IsolationLevel.Unspecified, so the default is set as ReadCommited.
558 Thanks to Jerome Haltom <wasabi@larvalstage.net> for this patch. Fixes
560 * SqlTransaction.cs: If transaction count is greater then 0 then roll back.
561 Thanks to Jerome Haltom <wasabi@larvalstage.net> for this patch. Fixes
564 2007-10-15 Gert Driesen <drieseng@users.sourceforge.net>
566 * SqlException.cs: Do not hide Message on 2.0 profile. Fixes bug
569 2007-10-08 Marek Safar <marek.safar@gmail.com>
571 * SqlParameterCollection.cs (SetParameter): Fixed missing cast.
573 2007-09-27 Nagappan A <anagappan@novell.com>
575 * SqlConnection.cs: Added MonoTODO appropriately.
577 2007-09-26 Nagappan A <anagappan@novell.com>
579 * SqlCommandBuilder.cs: Code alignment.
581 2007-09-25 Nagappan A <anagappan@novell.com>
583 * SqlInitialCatalogConverter.cs, SqlDataSourceConverter.cs:
584 NetworkLibraryConverter.cs: Added new files.
586 * SqlParameter.cs: 2.0 attribute changes.
588 * SqlDataAdapter.cs: 2.0 attribute changes.
590 * SqlConnectionStringBuilder.cs: 2.0 attribute changes.
592 * SqlConnection.cs (ClearAllPools, ClearPool): Implemented 2.0
593 APIs, other 2.0 attribute changes.
595 * SqlCommandBuilder.cs (GetSchemaTable, InitializeCommand):
596 Implemented 2.0 APIs, other 2.0 attribute changes.
598 * SqlBulkCopyColumnMappingCollection.cs: Added constructor, 2.0
599 API compatibility changes.
601 * SqlException.cs: 2.0 attribute changes.
603 2007-08-13 Nagappan A <anagappan@novell.com>
605 * SqlConnection.cs (ConnectionString): 2.0 compatibility changes.
607 * SqlDataReader.cs (IsCommandBehavior): Fixed spelling mistake of
609 (Dispose): 2.0 compatibility changes.
611 * SqlBulkCopy.cs (SqlRowsCopied): Fixed spelling mistake of the
613 (RowsCopied): Generates event when NotifyAfter is set.
615 * SqlCommandBuilder.cs (Dispose, RefreshSchema): 2.0 compatibility
618 * SqlClientFactory.cs (CreateDataSourceEnumerator): Removed bogus
621 * SqlException.cs (Message): 2.0 compatibility changes.
623 2007-08-06 Nagappan A <anagappan@novell.com>
625 * SqlCommand.cs, SqlDataReader.cs, SqlConnection.cs: When the
626 server resets the connection, now the client code also disconnects
627 the session and remove the instance from pool. Fixes bug # 81933.
629 2007-07-31 Nagappan A <anagappan@novell.com>
631 * SqlCommand.cs (Transaction, Connection): IDbCommand Transaction
632 and Connection can be set to null. Fixes bug 82189.
634 2007-07-23 Nagappan A <anagappan@novell.com>
636 * SqlCommandBuilder.cs (ApplyParameterInfo, GetParameterName):
637 (GetParameterPlaceholder): Implemented 2.0 missing APIs.
639 2007-07-22 Nagappan A <anagappan@novell.com>
641 * SqlBulkCopy.cs (NotifyAfter): Implemented 2.0 property.
642 (GetColumnMetaData, GenerateColumnMetaData):
643 (ValidateColumnMapping): Implemented private method's to generate
644 and validate SqlBulkCopy headers.
645 (BulkCopyToServer): Private method to actually do the bulk copy
647 (WriteToServer): Implemented 2.0 missing overloaded methods.
648 (IDisposable.Dispose): Implemented 2.0 missing method.
650 * SqlBulkCopyColumnMappingCollection.cs (Add, CopyTo): Implemented
652 (Item): Implemented missing property.
654 * SqlBulkCopyColumnMapping.cs: Modified the implementation of
655 Constructors to use property.
657 * SqlDataReader.cs (GetSqlXml, IsCommandBehaviour): Added 2.0
659 (Connection): Added missing property.
661 * SqlParameter.cs (SetSqlDbType, ConvertToFrameworkType): Modified
662 method as internal from private.
664 * SqlConnection.cs: Fixed 2.0 missing feature.
666 * SqlException.cs: Fixed 2.0 missing feature.
668 * SqlClientPermission.cs: Fixed 2.0 missing feature.
670 2007-07-01 Gert Driesen <drieseng@users.sourceforge.net>
672 * ISqlNotificationReceiver.cs: Removed.
673 * SqlClientFactory.cs: Use SqlDataSourceEnumerator from S.D.Sql and
674 marked method todo. Avoid unnessary casts. Code formatting.
675 * SqlCommand.cs: Explicit interface implementation of IDbCommand not
676 necessary on 2.0 profile. Fixes API mismatches. Avoid unnecessary
677 casts. Code formatting.
678 * SqlConnection.cs: Also use RecommendAsConfigurable instead of
679 SettingBindableAttribute on 2.0. Use StateChange event from base class
680 on 2.0. Only explicitly implement IDbConnection methods on 1.0, since
681 these are implemented by base class on 2.0 profile. Removed extra
682 explicit implementation of IDisposable since the base class implements
683 this. Code formatting.
684 * SqlDataAdapter.cs: Dispose (bool) override not necessary on 2.0
685 profile. Stubbed ICloneable.Clone. Fixes API mismatches.
686 * SqlDataReader.cs: On 2.0, IDisposable.Dispose is implemented by
687 DbDataReader. Only 1.0 profile, explicitly implemented IEnumerable
688 GetEnumerator. Code formatting.
689 * SqlDataSourceEnumerator.cs: Removed.
690 * SQLDebugging.cs: Marked sealed on 2.0. Code formatting.
691 * SqlNotificationAuthType.cs: Removed.
692 * SqlNotificationInfo.cs: Added missing fields. Code formatting.
693 * SqlNotificationSource.cs: Added missing fields. Code formatting.
694 * SqlNotificationTransports.cs: Removed.
695 * SqlNotificationType.cs: Added missing Unknown field. Code formatting.
696 * SqlParameter.cs: Removed Browsable and EditorBrowsable attributes
697 from Precision and Scale. Fixes API mismatches. Code formatting fixes.
698 * SqlTransaction.cs: On 2.0 profile, Dispose method is exposed by
699 base class. Fixes API mismatches. Code formatting fixes.
701 2007-06-21 Nagappan A <anagappan@novell.com>
703 * SqlConnection.cs: Fixed compiler warning.
705 2007-06-11 Nagappan A <anagappan@novell.com>
707 * SqlConnection.cs (ParseDataSource): Adds tcp support in
708 connection string. Fixes bug # 80975.
710 * SqlCommand.cs (Dispose): On disposing the command object, don't
711 dispose connection and transaction.
713 2007-06-06 Nagappan A <anagappan@novell.com>
715 * SqlCommand.cs, SqlConnectionStringBuilder.cs, SqlConnection.cs:
716 Fixed 1.0 and 2.0 extras, errors as stated in class status page.
718 * SqlDataAdapter.cs, SqlParameter.cs:Fixed 1.0 and 2.0 extras,
719 errors as stated in class status page.
721 * SqlBulkCopyColumnMappingCollection.cs: Fixed 1.0 and 2.0 extras,
722 errors as stated in class status page.
724 2007-05-30 Nagappan A <anagappan@novell.com>
726 * SqlParameter.cs (SqlParameter): Updated constructor to use the
727 new TDS RPC implementation.
728 Fixed missing attributes.
729 (SetDbType): Added new case for sql_variant type.
730 (ConvertToFrameworkType): Implemented new private method to
731 convert the data type to framework type.
733 * SqlParameterCollection.cs: Fixed missing attributes and
734 implemented missing methods.
736 * SqlConnection.cs: Fixed missing attributes.
738 * SqlConnectionStringBuilder.cs: Certain attributes are missing or
739 its value or they are not appropriate. Fixed them.
741 * SqlDataReader.cs (GetData): Method is available only under 1.0
744 * SqlCommandBuilder.cs: Certain attributes are available only
745 under 2.0 profile, so moved them inside ifdef.
747 * SqlCommand.cs: Certain attributes are available only under 2.0
748 profile, so moved them inside ifdef.
750 * SqlBulkCopy.cs: Added new stubs.
752 * SqlBulkCopyColumnMappingCollection.cs: Added new stubs.
754 2007-05-29 Nagappan A <anagappan@novell.com>
756 * SqlCommand.cs (Dispose): Command.Dispose closing
757 connection. Fixes bug # 81710. Thanks to AMC <amc1999@gmail.com>
760 2007-05-10 Nagappan A <anagappan@novell.com>
762 * SqlClientMetaDataCollectionNames.cs: Fixed incorrect constructor
765 * SqlConnectionStringBuilder.cs: Fixed missing attributes.
767 2007-05-09 Igor Zelmanovich <igorz@mainsoft.com>
769 * SqlConnectionStringBuilder.cs: added MonoNotSupported attribute.
771 2007-04-03 Amit Biswas <amit@amitbiswas.com>
773 * SqlDataReader.cs (GetSqlBytes, GetProviderSpecificFieldType)
774 (GetProviderSpecificValue, GetProviderSpecificValues): Implemented
777 * SqlParameter.cs (XmlSchemaCollectionDatabase): Implemented missing property
778 (XmlSchemaCollectionName): Implemented missing property
779 (XmlSchemaCollectionOwningSchema): Implemented missing property
780 (SourceColumnNullMapping): Existing implementation was not correct, Replaced the implementation
781 (.ctor): Implemented mising constructor new in .net 2.0
783 * SqlErrorCollection.cs (CopyTo): Implemented missing API
785 * SqlParameter.cs (InferSqlType): Corrected bug related to default values of
787 (ResetSqlDbType): Implemented missing API
788 (ResetDbType): Implemented missing API
790 2007-03-09 Amit Biswas <amit@amitbiswas.com>
792 * SqlParameterCollection.cs (CopyTo): Implemented missing API
794 2007-04-02 Nagappan A <anagappan@novell.com>
796 * SqlParameter.cs: Variable name fix.
798 2007-03-20 Nidhi Rawal <rawalnidhi_rawal@yahoo.com>
800 * SqlClientFactory.cs: Added two using directives.
801 (CreateConnectionStringBuilder): Implemented the method.
802 (CreatePermission): Implemented the property.
804 * SqlCommand.cs: Added one using directive.
805 (Clone): Implemented the method.
806 (Dispose): Implemented the method.
807 (BeginExecuteXmlReader): Implemented the method.
809 * SqlCommandBuilder.cs (QuoteIdentifier): Implemented the method.
810 (UnquoteIdentifier): Implemented the method.
812 * SqlConnection.cs (ChangePassword): Implemented the method.
814 2007-03-19 Nidhi Rawal <rawalnidhi_rawal@yahoo.com>
816 * SqlClientFactory.cs (CanCreateDataSourceEnumerator): Implemented
819 * SqlCommand.cs (Notification): Implemented the property.
820 (NotificationAutoEnlist): Implemented the property.
822 * SqlDataReader.cs (VisibleFieldCount): Implemented the property.
824 * SqlConnectionStringBuilder.cs (TrustServerCertificate): Implemented
826 (TypeSystemVersion): Implemented the property.
827 (UserInstance): Implemented the property.
828 (ContextConnection): Implemented the property.
830 * SqlConnection.cs (FireInfoMessageEventOnUserErrors): Implemented
832 (StatisticsEnabled): Implemented the property.
834 * SqlDataAdapter.cs (UpdateBatchSize): Implemented the property.
836 * SqlParameter.cs: Implemented one attribute.
838 2007-03-16 Andreia Gaita <avidigal@novell.com>
840 * SqlParameter.cs: Move isVariableSizeType flag to TdsMetaParameter
841 so that the TdsMetaParameter can validate itself for valid size / values.
842 * SqlCommand.cs (Execute): Call Validate on TdsMetaParameter.
844 2007-03-14 Nagappan A <anagappan@novell.com>
846 * SqlCommand.cs (CommandType): Exception type thrown in 2.0
847 profile is different than 1.0, ArgumentOutOfRangeException.
848 (Connection): Exception type thrown in 2.0 profile is different
849 than 1.0, ArgumentOutOfRangeException.
850 (Execute): If Size property is 0 for String and Binary type, then
851 throw InvalidOperationException.
852 (ValidateCommand): Exception type thrown in 2.0 profile is
853 different than 1.0, NullReferenceException.
855 2007-03-09 Nagappan A <anagappan@novell.com>
857 * SqlDataReader.cs: Fixed syntax erros reported in class status
860 2007-03-09 Andreia Gaita <avidigal@novell.com>
862 * SqlCommand.cs (ExecuteScalar): Fix returned value for
863 stored procedure calls to return the first column of the
864 first row produced by the proc.
866 2007-03-08 Nagappan A <anagappan@novell.com>
868 * SqlCommand.cs (CloseDataReader): Checks whether the SQL
869 connection is created or not.
871 2007-03-07 Andreia Gaita <avidigal@novell.com>
873 * SqlCommand.cs (ExecuteScalar): when calling stored procedures,
874 implement support for return of output values in the parameter
877 2007-02-16 Nidhi Rawal <rawalnidhi_rawal@yahoo.com>
879 * SqlParameter.cs (CompareInfo): Implemented the property
881 (LocaleId): Written the property LocaleId.
882 (SqlValue): Written the propert SqlValue.
884 2007-02-15 Nidhi Rawal <rawalnidhi_rawal@yahoo.com>
886 * SqlCommand.cs: Added some attributes which were not implemented
887 for .NET 2.0 and removed extra attribute which are not there in
890 * SqlCommandBuilder.cs: Added some attributes that were not
891 implemented for .NET 2.0.
893 * SqlParameterCollection.cs: Added some attributes that were
894 not implemented for .NET 2.0.
896 * SqlConnectionStringBuilder.cs: Added some attributes that
897 were not implemented for .NET 2.0.
899 * SqlConnection.cs: Added attribute that was not implemented
902 * SqlParameter.cs: Added some attributes which were not
903 implemented for .NET 2.0 and removed some extra attributes which
904 are not there in .NET 2.0
906 2007-02-09 Nagappan A <anagappan@novell.com>
908 * SqlConnection.cs (SetConnectionString): Fixes bug # 80712. A
911 2007-01-08 Nagappan A <anagappan@novell.com>
913 * SqlTransaction.cs (Dispose): Fixed compliation warning.
915 * SqlDataReader.cs (GetValues): Length of elements to be copied was
916 decided based on the argument array passed, which caused a bug, if
917 the length of given array is more than actual column values.
919 * SqlCommandBuilder.cs (CatalogSeparator, SchemaSeparator)
920 (CatalogLocation): Implemented missing properties.
921 (CreateDeleteCommand, CreateInsertCommand, CreateUpdateCommand):
922 Modified private methods to take bool flag. If true, add actual
923 parameter name instead of p1, p2 etc.
924 (CreateParameter): Added overloaded private method to create
925 parameter with the actual column name.
926 (GetUpdateCommand, GetDeleteCommand, GetInsertCommand):
927 Implemented missing overloaded methods.
928 (SetRowUpdatingHandler): Implemented missing protected method.
930 * SqlCommand.cs: Fixed compilation warning. Removed bogus
933 2006-12-05 Nagappan A <anagappan@novell.com>
935 * SqlCommand.cs (Execute): If sql2 length is greater than 0, then
936 add ';' and the respective sql2 string and then execute the
937 string. Fixes bug # 79880.
939 2006-08-30 Nagappan A <anagappan@novell.com>
941 * SqlConnection.cs: Implemented SqlConnection.GetSchema ().
943 2006-09-08 Konstantin Triger <kostat@mainsoft.com>
945 * SqlClientFactory.cs: implemented SqlClientFactory.CreateConnection ().
947 2006-07-13 Senganal T <tsenganal@novell.com>
949 * SqlClientFactory.cs SqlCommand.cs SqlConnectionFactory.cs
950 SqlClientPermission.cs SqlParameterCollection.cs SqlDataReader.cs
951 SqlConnection.cs SqlParameter.cs SqlTransaction.cs :
954 2006-05-31 Gert Driesen <drieseng@users.sourceforge.net>
956 * SqlConnection.cs: Removed extra destructor, as destructor on
957 System.ComponentModel.Component already calls Dispose.
958 * SqlParameter.cs: Removed explicit interface implementation of
959 IDataParameter.ParameterName.
961 2006-05-26 Senganal T <tsenganal@novell.com>
964 - InferSqlType : if value is null or DBNull.Value, retain the
965 current parameter type.
967 2006-04-18 Senganal T <tsenganal@novell.com>
970 - SetConnectionString : set the pareameter to default values
971 if connection string is empty or null
972 - Open : Raise InvalidOperationException if Connection String
974 - Dispose : Test exception not raised if dispose called on a
975 connection with empty connection string
977 slight modification of the patch by Jonel Rienton
979 2006-04-07 Senganal T <tsenganal@novell.com>
981 * SqlCommandBuilder.cs :
982 * CreateDeleteCommand ()
983 * CreateUpdateCommand ()
984 * CreateInsertCommand ()
985 - Changed the signature. Do not need DataRow parameter
986 as the Query generated is parametric.
987 - Correct the null-check term in the WhereClause, set the
988 correct properties for null-check parameter
990 - Modified the generated query to match the query as
991 generated by 2.0. We now ignore null-check in the
992 whereclause if the Column does not allow nulls.
993 * ctor () : Set QuotePrefix and QuoteSuffix for 2.0 profile
994 * GetUpdateCommand ()
995 * GetInsertCommand ()
996 * GetDeleteCommand ()
997 - Do not create new command everytime. Create only if
999 * RefreshSchema : Reset the commands.
1001 2006-02-17 Chris Toshok <toshok@ximian.com>
1003 * SqlCommand.cs, SqlCommandBuilder.cs, SqlConnection.cs,
1004 SqlDataAdapter.cs: remove DataSysDescription attributes for >= 2.0
1006 2006-02-17 Chris Toshok <toshok@ximian.com>
1008 * SqlDataReader.cs: remove VisibleFieldCount property.
1010 2006-02-10 Senganal T <tsenganal@novell.com>
1011 * SqlDataReader.cs :
1012 - GetBytes : Read binary/blob/clob data sequentially when
1013 CommandBehavior is set to SequentialAcccess
1014 - GetChars : Read String/clob data sequentially when CommandBehavior
1015 is set to SequentialAccess
1017 - ExecuteReader : set SequentialAccess property on TDS
1018 - CloseDataReader : Reset the command behavior
1020 2006-01-27 Senganal T <tsenganal@novell.com>
1022 * SqlCommandBuilder.cs :
1023 - Modified CreateUpdateCommand,CreateDeleteCommand , to not include
1024 column name in the query if its a expression col.
1025 Also, modified the queries to match the generated queries in ms.net
1027 - Modifed Prepare, to check if Parameter is explicitly initialized
1029 - Added CheckIfInitialized : Checks if datatype is explicitly set and
1030 non-zero size is set for variable datatypes.
1031 * SqlDataReader.cs :
1032 - Added code for GetSqlBinary ()
1033 - Fixed GetFieldCount ()
1034 - Added more checks and exceptions.
1036 2006-01-17 Senganal T <tsenganal@novell.com>
1038 * SqlCommandBuilder.cs
1039 - Modified CreateNewCommand () : Clean up any existing parameter list
1040 before reusing the command.Fixes #77225
1042 2005-11-24 Senganal T <tsenganal@novell.com>
1045 - Modifications to get the correct Packet Size
1047 2005-11-21 Senganal T <tsenganal@novell.com>
1049 * SqlClientFactory.cs
1050 * SqlCommandBuilder.cs
1051 * SqlParameterCollection.cs
1057 Added stubs and other changes for ADO.NET 2.0 compatibility
1059 2005-11-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1061 * SqlConnection.cs: don't throw NotImplementedException when using
1062 'PERSIST SECUTIRY INFO'. Just do nothing.
1064 2005-10-27 Senganal T <tsenganal@novell.com>
1069 Made changes so that the number of rows affected can be got directly from
1070 Tds regardsless of the type of query.Fixes bug #75698
1072 2005-10-19 Senganal T <tsenganal@novell.com>
1074 * SqlConnection.cs (SetProperties) :
1075 - Added support for AttachDBFileName
1077 2005-10-19 Senganal T <tsenganal@novell.com>
1079 * SqlException.cs (Constructor)
1080 - Modified the constructor, so that the message parameter
1081 of base class is not the same as that of the Exception message.
1084 2005-09-24 Sureshkumar T <tsureshkumar@novell.com>
1086 * SqlParameterCollection.cs (AddWithValue): added method. patch
1087 from awaddell@fnfr.com (Andy Waddell).
1089 2005-09-21 Senganal T <tsenganal@novell.com>
1092 * SqlConnection.cs :
1093 - Set the correct Default Values for Parameters.
1094 - Added Argument Checks (where missing) for the Properties and
1095 throw the correct exception on error.
1096 - Modified SetDefaultParameters() to make sure that the parameters
1097 are all reset to default values everytime it is called.
1098 - Modified SetProperties() to take into account the order of the
1099 keywords in the ConnectionString.
1101 SqlConnection Fixes for the failing sqlserver connected-mode testcases
1102 in ProviderTest/System.Data.SqlClient/SqlConnectionTest.cs
1104 2005-09-21 Senganal T <tsenganal@novell.com>
1106 * SqlTransaction.cs : Modifed the Rollback() method, so that
1107 connection can be used for another transaction after the previous
1108 transaction is rolled back. fixes bug 75904
1110 2005-09-02 Umadevi S <sumadevi@novell.com>
1112 * Removed SqlResultSet.cs file
1114 2005-08-26 Sureshkumar T <tsureshkumar@novell.com>
1116 * SqlConnection.cs (Open): enable sp_reset_connection.
1118 2005-08-25 Sureshkumar T <tsureshkumar@novell.com>
1120 * SqlCommandBuilder.cs: BuildInformation (): continue on columns
1121 who don't have basetablename.
1123 2005-08-12 Daniel Morgan <danielmorgan@verizon.net>
1125 * SqlCommandBuilder.cs: update command builder based on
1126 OdbcCommandBuilder latest changes to fix regression
1129 2005-08-05 Sureshkumar T <tsureshkumar@novell.com>
1131 * SqlCommandBuilder.cs: Set SourceVersion property to the created
1132 parameters as it is used by the Adapter's Update method.
1134 2005-07-22 Sureshkumar T <tsureshkumar@novell.com>
1136 * SqlCommandBuilder.cs, SqlParameterCollection.cs,
1137 SqlConnection.cs, SqlParameter.cs:
1138 - updated attributes & attribute descriptions to match with
1141 2005-07-16 Daniel Morgan <danielmorgan@verizon.net>
1143 * SqlCommandBuilder.cs: CreateUpdateCommand should get the current value, not
1144 the orginal value when setting one of the SET variables
1146 2005-07-15 Sureshkumar T <tsureshkumar@novell.com>
1148 * SqlCommandBuilder.cs:
1149 - set_DataAdapter: unsubscribe event if DataAdapter is reset.
1150 - CreateInsertCommand, CreateUpdateCommand, CreateDeleteCommand:
1151 if column mapping is missing, use the source column name. use
1152 proper version to get the data.
1153 - RowUpdatingHandler: set status to continue to actually process
1156 2005-07-04 Ben Maurer <bmaurer@ximian.com>
1158 * SqlError.cs: Patch from dezelin@gmail.com to fix serialization.
1160 2005-06-29 Sureshkumar T <tsureshkumar@novell.com>
1162 * SqlConnection.cs: Open (): catch TdsInternalException and throw
1164 * SqlException.cs: code re-organised to pass message as well with
1167 2005-06-23 Sureshkumar T <tsureshkumar@novell.com>
1169 * SqlConnectionStringBuilder.cs: simplified multiple keyword
1170 mappings and allowed-key checking. fixed Item, Remove,
1171 ContainsKey, ShoudSerialize, TryGetValue implementations.
1173 2005-06-21 Sureshkumar T <tsureshkumar@novell.com>
1175 * SqlConnectionStringBuilder.cs: Connection String Builder class
1176 for SqlClient Data Provider.
1178 2005-06-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1180 * SqlParameter.cs: moved the 'using S.D.SqlTypes' out of NET_2_0. Fixes
1183 2005-06-01 Sureshkumar T <tsureshkumar@novell.com>
1185 * SqlParameter.cs: Parameter's value can be SqlTypes. Convert to
1186 framework type to pass to TDS layer. Fixes bug #75044.
1188 2005-05-24 Umadevi S <sumadevi@novell.com>
1189 * fixed some 2.0 and 1.0 specific fields/attributes for various classes.
1190 * Added SqlClientMetaDataCollectionNames.cs, Implemented some 2.0
1191 properties for SqlParameterCollection for the bulkcopy feature.
1194 2005-05-20 Kornél Pál <http://www.kornelpal.hu/>
1196 * Fixed Bug #53169 - SqlDataReader incorrectly returns bigint as decimal
1197 Note: The fix works around the limitations of TDS 7.0 to avoid this
1198 difference between Mono and .NET Framework TDS 8.0 should be used instead.
1200 2005-05-20 Umadevi S <sumadevi@novell.com>
1202 * Fixed Bug 74948 - SqlParameter also takes DBNull Value.
1203 Correct some attributes stuff of 1.1 and 2.0 for SqlParameter.cs
1205 2005-05-20 Umadevi S <sumadevi@novell.com>
1207 * Continuing on implementation for bulkcopy and notification
1208 Added files SqlNotificationEventArgs.cs, OnChangeEventHandler.cs
1209 Modified SqlRowUpdatingEventArgs.cs
1211 2005-05-19 Umadevi S <sumadevi@novell.com>
1213 * For implementation of bulkcopy and notifications added files
1214 SqlBulkCopyOptions.cs,SqlBulkCopyColumnMapping.cs,SqlNotificationAuthType.cs
1215 SqlNotificationTransports.cs,SqlRowsCopiedEventArgs.cs, SqlRowsCopiedEventHandler.cs
1217 2005-05-19 Umadevi S <sumadevi@novell.com>
1219 * Corrected types,enum values of SqlNotificationType,SqlNotificationSource,
1220 SqlNotificationInfo and added new method in SqlRowUpdatingEventArgs.cs
1221 (For implementation of bulkcopy/notifications)
1223 2005-04-19 Sureshkumar T <tsureshkumar@novell.com>
1225 * SqlDataReader.cs: NextResult (): Re-create schema table for each
1226 result set. don't re-use, as it may be referenced from somewhere.
1228 2005-04-07 Sureshkumar T <tsureshkumar@novell.com>
1229 Ankit Jain <radical@corewars.org>
1231 * SqlConnection.cs: Implemented additional connection string
1232 property "Asynchronous Processing".
1234 * SqlCommand.cs: Implemented Asynchronous command execution API.
1236 * SqlAsyncState.cs: A internal state object for asynchronous
1239 * SqlAsyncResult.cs: Added. Class to hold result for asynchronous
1242 2005-03-28 Sureshkumar T <tsureshkumar@novell.com>
1244 * SqlCommand.cs: Execute: Add a semicolon at the end of
1245 CommandText. Multiple semicolon's are not being complained.
1249 2005-03-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1251 * SqlConnection.cs: added a finalizer for correct implementation of the
1252 IDisposable pattern.
1254 2005-03-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1256 * SqlException.cs: make it serialization-compatible with MS. Patch by
1257 Aleksandar Dezelin. Closes bug #73596.
1259 2005-03-08 Sureshkumar T <tsureshkumar@novell.com>
1261 * SqlDataReader.cs: Call base constructor with CommandBehavior
1262 parameter instead of passing DbCommand object. The internal base
1263 class with DbCommand Parameter is removed.
1265 2005-03-07 Sureshkumar T <tsureshkumar@novell.com>
1267 * SqlCommand.cs : Set CommandBehavior on
1268 ExecuteReader,ExecuteScalar,ExecuteNonQuery. This is used in
1271 This fixes bug #73252.
1273 2005-03-03 Sureshkumar T <tsureshkumar@novell.com>
1275 * SqlClientFactory.cs: While creating command, create using
1276 DbConnectionFactory as DbConnectionBase.CreateDbCommand needs to
1277 have a connection factory.
1279 * SqlConnection.cs: Added an internal constructor which takes
1280 DbConnectionFactory.
1282 * SqlConnectionFactory.cs: Added. Concrete class for abstract
1283 factory DbConnectionFactory.
1285 2005-02-22 Sureshkumar T <tsureshkumar@novell.com>
1287 * SqlDataReader.cs: GetBytes: return the length of the data if
1288 output buffer is null. if not, copy the values to buffer and
1289 return the bytes actually read.
1291 2005-02-02 Sureshkumar T <tsureshkumar@novell.com>
1294 - Database: return db name from database if connection open,
1295 otherwise take from connection string.
1296 - Set default values for parameters in the constructor itself.
1297 - Dangling else problem with Close method.
1298 - reset values of parms (TdsConnectionParameters) rather setting
1300 - set disposed to false in Open method
1301 - finally call base.Dispose in Dispose (bool)
1303 Fixes nunit regressions SqlConnectionTest:DefaultConnectionValues
1304 and SqlConnectionTest:DatabaseSynonyms.
1306 2005-01-27 Sureshkumar T <tsureshkumar@novell.com>
1308 * SqlCommand.cs (DeriveParameters): Change parameter name to
1310 * SqlParameter.cs (SqlParameter (object [])) : call default
1311 constructor to create Tds.Metaparameter.
1315 2005-01-03 Sureshkumar T <tsureshkumar@novell.com>
1317 * SqlCommand.cs: Fixed bug #68973. Reset Tds.RecordsAffected to 0
1318 for each execute statement.
1320 2004-11-25 Sureshkumar T <tsureshkumar@novell.com>
1322 These changes are for 2.0 profile only. These changes implement
1323 the generic data base access technique using Provider Factory
1324 Implementation. These classes need to be dervided from abstract
1325 base classes so that the corresponding factory classes are
1326 created when calling CreateCommand, CreateParameter, etc.
1328 * SqlClientFactory.cs: Provider Factory class Implementaion for SqlServer
1329 * SqlParameter.cs: Change base classes and override methods.
1330 * SqlParameterCollection.cs: Change base classes and override methods.
1331 * SqlTransaction.cs: Change base classes and override methods.
1332 * SqlDataSourceEnumerator.cs: DataSource Enumerator stubs.
1333 * SqlDataReader.cs: Change base classes and override methods.
1334 * SqlConnection.cs: Change base classes and override methods.
1335 * SqlCommandBuilder.cs: Change base classes and override methods.
1336 * SqlCommand.cs: Change base classes and override necessary methods.
1338 2004-10-14 Umadevi S <sumadevi@novell.com>
1339 * SqlCommand.cs - Implemented the clone method correctly.
1342 2004-10-06 Umadevi S <sumadevi@novell.com>
1343 * ISqlNoticationReceiver.cs - changed namespace
1344 * Added files SqlNotificationType.cs, SqlNotificationInfo.cs, SqlNotificationSource.cs
1346 2004-09-24 Umadevi S <sumadevi@novell.com>
1347 * SqlTransaction.cs - Dispose will not call rollback incase the transaction is not open.
1349 2004-09-14 Sebastien Pouliot <sebastien@ximian.com>
1351 * SqlClientPermission.cs: Added internal constructor accepting an Sql
1352 ClientPermissionAttribute parameter (using base class protected ctor).
1353 * SqlClientPermissionAttribute.cs: Copy now use the new SqlClient
1354 Permission constructor.
1356 2004-09-13 Sebastien Pouliot <sebastien@ximian.com>
1358 * SqlClientPermission.cs: Mostly completed (needs tests).
1359 * SqlClientPermissionAttribute.cs: Completed.
1361 2004-09-02 Umadevi S <sumadevi@novell.com>
1362 * SqlCommand.cs - ExecuteNonQuery to return -1 incase of executing a storedprocedure
1364 2004-08-16 Gert Driesen <drieseng@users.sourceforge.net>
1366 * SqlConnection.cs: added TODO on ConnectionString for keywords
1367 that are not yet implemented. check value of Integrated Security
1368 keyword, check value of bool keywords, improve error reporting
1369 for int keywords, added support for the following keyword
1370 synonyms : APP, TIMEOUT, NETWORK, PERSISTSECURITYINFO, WSID,
1371 LANGUAGE, USER. Throw NotImplementedException when encrypt keyword
1372 is set to true, enlist keyword is set to false or attachdbfilename
1373 keyword (or one of its synonyms) is set. Added FIXME for PERSIST
1374 SECURITY INFO keyword, throwing a NotImplementedException here
1375 would break lots of apps
1377 2004-08-16 Gert Driesen <drieseng@users.sourceforge.net>
1379 * SqlConnection.cs - spaces to tabs
1381 2004-08-12 Sureshkumar T <tsureshkumar@novell.com>
1382 * SqlDataReader.cs - In Close method, the remaining resultsets are drained
1383 out, to read output parameters & to avoid stream overlap
1385 2004-06-30 Umadevi S <sumadevi@novell.com>
1386 * SqlCommand.cs : In the Execute Method the commandbehavior parameters were ignored correct
1389 2004-06-22 Atsushi Enomoto <atsushi@ximian.com>
1391 * SqlCommandBuilder.cs : Avoid cast exception caused by DbNull.
1393 2004-06-18 Umadevi S <sumadevi@novell.com>
1394 * SqlCommand.cs - ExecuteNonQuery returns -1 in all cases except
1395 insert,update or delete.
1397 2004-06-18 Umadevi S <sumadevi@novell.com>
1398 * SqlConnection.cs - handled null being passed as a connectionstring
1399 - checked for minimal set of parameters in connectionstring.
1400 - handled unrecogonized keywords similar to MS.NET
1402 2004-06-17 Umadevi S <sumadevi@novell.com>
1403 * SqlTransaction.cs - fixed multiple rollbacks being called causes invalidoperationexception
1405 2004-06-04 Gert Driesen <drieseng@users.sourceforge.net>
1407 * SqlClientPermission.cs: removed extra CreateInstance
1410 2004-06-02 Gert Driesen <drieseng@users.sourceforge.net>
1412 * SQLDebugging.cs: added missing attributes, marked ctor
1413 public to match MS.NET
1415 2004-05-22 Atsushi Enomoto <atsushi@ximian.com>
1417 * SqlClientPermission.cs : don't use chained obsolete .ctor.
1419 2004-05-20 Gert Driesen (drieseng@users.sourceforge.net)
1421 * SqlClientPermissionAttribute.cs: change AllowMultiple and
1422 Inherited to match .NET
1424 2004-05-20 Umadevi S <sumadevi@novell.com>
1426 * Fixed bug 58406- implemented the hasrow method, test program used
1427 to test with the bug report
1429 2004-05-13 Umadevi S <sumadevi@novell.com>
1431 * SqlClientPermission.cs, SqlDataReader.cs - added missing methods with TODO tags
1432 * SqlCommand.cs, SqlDataAdapter.cs - implemented ToolboxItemAttribute
1433 * SQLDebugging.cs - Added new file with a TODO tag
1435 2004-04-05 Lluis Sanchez Gual <lluis@ximian.com>
1437 * SqlConnection.cs: Use connection pool implemented in Mono.Data.Tds.
1439 2004-04-01 Lluis Sanchez Gual <lluis@ximian.com>
1441 * SqlDataReader.cs: Null values are now represented with DBNull instances.
1444 2004-03-14 Tim Coleman <tim@timcoleman.com>
1445 * SqlCommand.cs SqlConnection.cs:
1446 Changes from two patches by Andres Taylor
1447 <andres@rotselleri.com>
1449 2004-03-12 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1451 * SqlParameter.cs: DO NOT USE the consts scheme if types can be referenced directly!
1453 2004-01-10 Atsushi Enomoto <atsushi@ximian.com>
1455 * SqlClientPermission.cs : Fixed NET_2_0 build related to
1456 obsolete attribute problem (see DbDataPermission.cs)
1458 2003-12-28 Tim Coleman <tim@timcoleman.com>
1460 Stubbed out this class.
1462 2003-12-23 Tim Coleman <tim@timcoleman.com>
1464 Improved connection string parsing. See
1465 System.Data.Common.DbConnectionString for source.
1467 2003-12-21 Tim Coleman <tim@timcoleman.com>
1469 Enable Integrated Security
1471 2003-12-19 Tim Coleman <tim@timcoleman.com>
1472 * ISqlNotificationReceiver.cs SqlResultSet.cs:
1474 * SqlClientPermission.cs:
1475 Fix constructor for 1.2
1477 2003-12-04 John Luke <jluke@cfl.rr.com>
1479 * SqlXmlTextReader.cs: applied patch from Chris Masters <neeeeeep@bigpond.com>
1480 fix peek so it checks if it is at the end and also to make sure that if Read()
1481 advances the position past the end of the localBuffer array, it makes
1482 a call to GetNextBuffer(). fixes bug #40253 System.IndexOutOfRangeException when
1483 using SqlCommand.ExecuteXmlReader()
1485 2003-11-20 Joerg Rosenkranz <JoergR@voelcker.com>
1487 * SqlConnection (SetDefaultConnectionParameters):
1488 Changed default value of WORKSTATION ID to reflect real
1489 host name instead of "localhost".
1491 2003-11-16 Ben Maurer <bmaurer@users.sourceforge.net>
1493 * SqlParameterCollection.cs (Clear): Clear needs to take
1494 the parameter out of the collection so that it can be used
1499 2003-10-03 Diego Caravana <diego@toth.it>
1501 * SqlCommand.cs: no change.
1503 * SqlConnection.cs (Close): Added checks for null instance
1506 * SqlParameter.cs (Direction): Now handles parameters of type
1507 ReturnValue and InputOutput.
1509 * SqlParameterCollection.cs (IndexOf(string)): Search for
1510 SqlParameter object in list is done by obtaining ParameterName
1511 attribute, not directly through list.IndexOf().
1513 2003-08-22 Duncan Mak <duncan@ximian.com>
1515 * SqlCommand.cs (ExecuteNonQuery): Return
1516 Connection.Tds.RecordsAffected if it is successful. Patch from
1517 Jörg Rosenkranz <joergr@voelcker.com>.
1519 This is part of a fix to bug #40315.
1521 2003-08-20 Duncan Mak <duncan@ximian.com>
1523 * SqlConnectionPool.cs (ReleaseConnection): A patch from Joerg
1524 Rosenkranz <JoergR@voelcker.com>. Currently, if a connection is
1525 closed by an external event (network problem, etc.) it is pushed
1526 back into the connection pool. The next Open call retrieves this
1527 invalid connection which leads to exceptions when executing
1530 This patch fixes this problem. This closes bug #47429.
1532 2003-07-04 Miguel de Icaza <miguel@ximian.com>
1534 * SqlDataReader.cs: Added extra information to the exceptions
1535 thrown by all the GetXXXX methods.
1537 2003-03-15 Daniel Morgan <danmorg@sc.rr.com>
1539 * SqlConnection.cs: if Server in the ConnectionString
1540 is set to "(local", use "localhost" as the hostname
1543 2003-03-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1545 * SqlException.cs: implemented GetObjectData ().
1547 2003-02-16 Daniel Morgan <danmorg@sc.rr.com>
1549 * ChangeLog: added this file
1551 * SqlConnection.cs: - parse data source for 3 possible uses:
1553 "Server=hostname\\instancename",
1554 "Server=hostname,port" and open the connection based on the
1555 resulting server name and port.
1556 - Added support for named instances
1557 by discovery of the sql server tcp port via the sql monitor (udp port 1434)
1558 thanks to Phillip Jerkins (Phillip.Jerkins@morgankeegan.com) contribution.
1559 Also, thanks to Gonzalo and Tim for their help with timeouts.