2008-12-20 Gonzalo Paniagua Javier <gonzalo@novell.com>
[mono.git] / mcs / class / System.Data / System.Data.SqlClient / ChangeLog
1
2 2008-12-20 Gonzalo Paniagua Javier <gonzalo@novell.com>
3
4         * SqlConnection.cs: close the connection on error.
5
6 2008-12-16 Gonzalo Paniagua Javier <gonzalo@novell.com>
7
8         * SqlParameter.cs: don't allocate error strings until the error
9         actually happens. Compare types instead of strings. Use a Hashtable
10         for type mappings.
11
12 2008-12-12 Gonzalo Paniagua Javier <gonzalo@novell.com>
13
14         * SqlParameter.cs: use the underlying type when inferring the type for
15         enumerations.
16
17 2008-11-13  Veerapuram Varadhan  <vvaradhan@novell.com>
18
19         * SqlCommand.cs: When a timeout exception occurs, reset the
20         connection before re-using it.  Fixes connection corrupted errors
21         on timeout exception.
22         
23 2008-11-09  Gert Driesen  <drieseng@users.sourceforge.net>
24
25         * SqlConnection.cs (ClearPool): Added null check.
26
27 2008-11-09  Gert Driesen  <drieseng@users.sourceforge.net>
28
29         * SqlConnection.cs: In Close, also remove reference to pool. In Open,
30         set TdsConnection.Pooling to false for a non-pooled connection.
31         Fixed ClearAllPools to no longer create a new connection for each
32         pool. In ClearPool, perform a lookup of the pool to clear using
33         the connectionstring as the pool field may refer to another pool
34         (as the connectionstring may have changed).
35
36 2008-09-30  Veerapuram Varadhan  <vvaradhan@novell.com>
37
38         * SqlDataReader.cs (GetSqlXml): Handle the scenario when Sql
39         Server 2005 returns Xml column type as NTEXT when called from
40         clients that use < TDS 8.0 protocol.
41         
42 2008-09-20  Veerapuram Varadhan  <vvaradhan@novell.com>
43
44         * SqlCommand.cs (DeriveParameters): Simplification of the if-else loop.
45         
46 2008-09-20  Veerapuram Varadhan  <vvaradhan@novell.com>
47
48         * SqlCommand.cs (DeriveParameters): Handle no square brackets 
49         case in schema/procedure names.
50         
51 2008-09-17  Veerapuram Varadhan  <vvaradhan@novell.com>
52
53         * SqlCommand.cs (DeriveParameters): Escape/trim both
54         schema/procedure names before passing as parameter values.
55         
56 2008-09-13  Atsushi Enomoto  <atsushi@ximian.com>
57
58         * SqlDependency.cs : wrong namespace.
59
60 2008-08-14  Gert Driesen  <drieseng@users.sourceforge.net>
61
62         * SqlConnection.cs: Use constants for min/max values. When value is
63         zero-length string, then fallback to default value for boolean and
64         integer backed properties. Throw ArgumentException when min pool size
65         exceeds max pool size. Check whether value for 'MARS' is a bool.
66         The 'user instance' property is 2.0 only.
67
68 2008-08-14  Gert Driesen  <drieseng@users.sourceforge.net>
69
70         * SqlConnection.cs: Convert keywords to lowercase instead of uppercase
71         to avoid further case changes in exception messages.
72
73 2008-07-28  Gert Driesen  <drieseng@users.sourceforge.net>
74
75         * SqlCommand.cs (ExecuteReader): When behavior includes SingleRow,
76         then only return a single result. Fixes bug #412569.
77
78 2008-07-28  Gert Driesen  <drieseng@users.sourceforge.net>
79
80         * SqlCommand.cs: Fixed order of arguments for ArgumentException in
81         CommandTimeout.
82         * SqlConnection.cs (ChangePassword): Do not allow empty connection
83         string. Updated exception messages.
84
85 2008-07-28  Gert Driesen  <drieseng@users.sourceforge.net>
86
87         * SqlCommand.cs: Fixed param name in ArgumentException for negative
88         CommandTimeout to match MS. On 2.0 profile, throw NRE in Prepare
89         when connection is NULL. In Prepare, return immediately after
90         connection check (2.0 only) for stored procedures, or when no
91         parameters are added. Added check to see if transaction is
92         associated with same connection as the command and updated
93         exception messages.
94
95 2008-07-28  Gert Driesen  <drieseng@users.sourceforge.net>
96
97         * SqlCommand.cs: Added bool argument to ValidateCommand to specify
98         whether an async method is being executed. Minor changes to exception
99         messages to match MS.
100
101 2008-07-28  Gert Driesen  <drieseng@users.sourceforge.net>
102
103         * SqlCommand.cs: Avoid NRE in CloseDataReader when connection is NULL.
104         Fixes bug #412584. Removed unused moreResults eargument from
105         CloseDataReader. Removed behavior argument from Execute, and have it
106         use the behavior field instead. In ValidateCommand, throw
107         InvalidOperationException instead of NRE when Connection is NULL.
108         * SqlDataReader.cs: Sync with SqlCommand's CloseDataReader signature
109         change.
110
111 2008-07-28  Gert Driesen  <drieseng@users.sourceforge.net>
112
113         * SqlCommand.cs: (Transaction): On the 1.0 profile, do not allow
114         Transaction to be set when a reader is open for the current connection. 
115         Fixes bug #412579. 
116
117 2008-07-28  Gert Driesen  <drieseng@users.sourceforge.net>
118
119         * SqlCommand.cs (Connection): Do not throw InvalidOperationException
120         if transaction is in progress. Fixes bug #412576. On 1.0 profile, throw
121         InvalidOperationException when a reader is open for the current
122         connection. Do not set transaction to NULL when changing connection,
123         instead set it to null in Transaction when transaction is no longer
124         open.
125
126 2008-07-28  Gert Driesen  <drieseng@users.sourceforge.net>
127
128         * SqlConnection.cs: Use null as default value for connectionString
129         field. Remove Init method, as initialization is done in
130         SetDefaultConnectionParameters. Initialize parms in
131         SetDefaultConnectionParameters to avoid calling Reset on newly
132         initialized collection. In Dispose (bool), also invoke base.Dispose if
133         SqlConnection was already disposed. Fixes bug #412571. 
134
135 2008-07-28  Gert Driesen  <drieseng@users.sourceforge.net>
136
137         * SqlConnection.cs (ChangeState): Return immediately when new state
138         equals original state. Fixes bug #412574. Removed extra whitespace.
139
140 2008-07-23  Veerapuram Varadhan  <vvaradhan@novell.com>
141
142         * SqlDataReader.cs (NextResult): Memleak fix - mark datatypeNames
143         array to be GCed along with schemaTable.
144         
145 2008-07-23  Veerapuram Varadhan  <vvaradhan@novell.com>
146
147         * SqlDataReader.cs: Do not generate schemaTable unless otherwise
148         asked for; use command.Tds.Columns instead.  Improves performance
149         of the DataReader.
150         
151 2008-07-10  Veerapuram Varadhan  <vvaradhan@novell.com>
152
153         ** Fixes #326182
154         * SqlCommand.cs (GetOutputParameters): Update parameter values iff 
155         parameter direction is InputOutput or Output.
156         
157 2008-07-06  Gert Driesen  <drieseng@users.sourceforge.net>
158
159         * SqlException.cs: Modified HResult/ErrorCode to match MS. Removed
160         unused FromTdsInternalException overload. Removed unnecessary check
161         for Errors.Count. Minor code formatting.
162
163 2008-07-03  Rodrigo Kumpera  <rkumpera@novell.com>
164
165         * SqlConnection.cs: Remove connStringParameters as nobody uses it.
166         
167 2008-07-01  Rodrigo Kumpera  <rkumpera@novell.com>
168
169         * SqlDataReader.cs: Do all column accesses with int indexes.    
170
171 2008-07-01  Rodrigo Kumpera  <rkumpera@novell.com>
172
173         * SqlDataReader.cs (GetSchemaTable): All column index are constants,
174         extract them.
175
176 2008-07-01  Rodrigo Kumpera  <rkumpera@novell.com>
177
178         * SqlDataReader.cs (GetSchemaTable): Calculate column indexes
179         outside of the row loop.
180
181 2008-07-01  Marek Habersack  <mhabersack@novell.com>
182
183         * SqlDataReader.cs: use named properties in TdsDataColumn for the
184         2.0 profile.
185
186 2008-06-30  Zoltan Varga  <vargaz@gmail.com>
187
188         * SqlDataReader.cs: Allocate 'schemaTable' lazily. 
189         (GetSchemaValue): Avoid some hash table lookups
190
191 2008-06-27  Zoltan Varga  <vargaz@gmail.com>
192
193         * SqlDataReader.cs (ConstructSchemaTable): Avoid unneccessary reflection calls.
194
195 2008-06-23  Veerapuram Varadhan  <vvaradhan@novell.com>
196
197         * SqlDependency.cs: New
198         
199 2008-06-12  Veerapuram Varadhan  <vvaradhan@novell.com>
200         
201         Patch by Christian Hergert <christian.hergert@gmail.com>
202         * SqlConnection.cs (Open): Do not reset the connection as it is already 
203         done in the TdsConnectionPool itself.
204         
205 2008-06-12  Marek Habersack  <mhabersack@novell.com>
206
207         * SqlParameterCollection.cs: this [int] must check the range and
208         throw an exception if necessary.
209         
210         * SqlCommand.cs: throw IOEX when stored procedure is not found in
211         DeriveParameters. All procedures in MS SQL will report at least
212         one parameter - the return value.
213
214 2008-06-10  Veerapuram Varadhan  <vvaradhan@novell.com>
215         
216         * SqlConnection.cs: TdsConnectionPool.GetConnectionPool() now returns 
217         IDictionary<TKey, TValue>. 
218         
219 2008-06-09  Ankit Jain  <jankit@novell.com>
220
221         * SqlCommand.cs: Use Tds instead of ITds now.
222         * SqlConnection.cs:  Likewise.
223
224 2008-05-27  Gert Driesen  <drieseng@users.sourceforge.net>
225
226         * SqlConnection.cs: Added support for '.' as alias for localhost.
227         Improve exception message when TCP/IP protocol is not enabled.
228
229 2008-05-17  Gert Driesen  <drieseng@users.sourceforge.net>
230
231         * SqlDataReader.cs (GetInt64): Removed workaround for TDS 7.0 handling
232         of bigint column type as this is handled in Mono.Data.Tds.
233
234 2008-05-14  Marek Habersack  <mhabersack@novell.com>
235
236         * SqlConnection.cs: added support for USER INSTANCE keyword in the
237         connection string.
238
239 2008-04-22  Veerapuram Varadhan  <vvaradhan@novell.com>
240
241         ** Fixes Bug#381151
242         * SqlCommand.cs: Handle exceptions sanely and do not close
243         connection on TdsTimeoutException.
244         
245 2008-04-21  Gert Driesen  <drieseng@users.sourceforge.net>
246
247         * SqlBulkCopyColumnMappingCollection.cs: Changed argument names to
248         match MS. Code formatting.
249         * SqlCommand.cs: Changed argument names to match MS. Code formatting.
250         Do not include explicit IDbCommand implementation on 2.0 profile.
251         * SqlCommandBuilder.cs: Changed argument names to match MS. Code
252         formatting.
253         * SqlDataReader.cs: Changed argument names to match MS. Code
254         formatting.
255         * SqlParameterCollection.cs: Do not include IList, ICollection and
256         IDataParameterCollection explicit interface implementation on 2.0
257         profile. Code formatting.
258         * SqlConnection.cs: Changed argument names to match MS.
259         * SqlDataAdapter.cs: Changed argument names to match MS.
260         * SqlTransaction.cs: Do not include explicit interface implementation
261         of IDbTransaction.Connection on 2.0 profile. Code formatting.
262
263 2008-04-19  Robert Jordan  <robertj@gmx.net>
264
265         * SqlParameterCollection.cs (AddRange(SqlParameter[])):
266         Fix endless recursion.
267
268 2008-04-08  Marek Habersack  <mhabersack@novell.com>
269
270         * SqlConnection.cs: TCP port discovery via UDP port 1434 should
271         honor the timeout specified in the connection string (or the
272         default one). In some environments 100 microseconds might not be
273         enough to discover the port.
274
275 2008-04-01  Marek Habersack  <mhabersack@novell.com>
276
277         * SqlParameter.cs: ConvertToFrameworkType must handle empty
278         strings gracefully - a DBNull.Value must be returned in this
279         case.
280
281         * SqlCommand.cs: DeriveParameters should split the stored
282         procedure name into the schema name and procedure name before
283         querying its parameters.
284
285 2008-03-03  Ankit Jain  <jankit@novell.com>
286
287         * SqlClientMetaDataCollectionNames.cs: Set the field values.
288
289 2007-10-21  Gert Driesen  <drieseng@users.sourceforge.net>
290
291         * SqlCommand.cs: Use ExceptionHelper.CheckEnumValue for enum checks.
292
293 2007-10-20  Gert Driesen  <drieseng@users.sourceforge.net>
294
295         * SqlCommand.cs: Added constant for default CommandTimeout, instead
296         of using a magic number. Avoid unnecessary initialization. Fixed
297         default value for DesignTimeVisible. Return zero-length string if
298         CommandText is null. Use ExceptionHelper.InvalidEnumValueException
299         to avoid code duplication. Spaces to tabs and code formatting.
300         * SqlConnection.cs: Use different default package size on 2.0 profile.
301         Added constants for default values, instead of using magic numbers.
302         Avoid unnecessary initialization. In PacketSize, return default or
303         configured packet size when connection is not open. Use
304         ExceptionHelper.ConnectionClosed instead of local method. Removed
305         use of some hardcoded values in SetDefaultConnectionParameters, and
306         use Environment.MachineName as default WorkstationId instead of
307         DNS host name. Code formatting.
308         * SqlDataAdapter.cs: In default ctor, set SelectCommand to null.
309         Avoid unnecessary initializations. Use direct assignment in
310         IDbDataAdapter implementation. Fixed exception message for negative
311         UpdateBatchSize. In Dispose override, make sure to invoke base
312         method.
313
314 2007-10-19  Gert Driesen  <drieseng@users.sourceforge.net>
315
316         * SqlTransaction.cs: Clear connection in commit. In IsolationLevel,
317         throw IOE if transaction is no longer open.
318
319 2007-10-19  Gert Driesen  <drieseng@users.sourceforge.net>
320
321         * SqlTransaction.cs: Avoid unnecessary initialization. Remove 
322         isRolledBack since its essentially the same as isOpen. Use
323         ExceptionHelper.TransactionNotUsable instead of duplicating code.
324         On 2.0 profile, ignore call to Rollback when transaction was already
325         disposed.
326
327 2007-10-18  Gert Driesen  <drieseng@users.sourceforge.net>
328
329         * SqlConnection.cs: Avoid unnecessary initialization. Use string.Empty
330         for assigning zero-length string, and use String.Length to check for
331         zero-length string. Added support for IsolationLevel.Snapshot.
332         Added StructuredTypeMembers schema collection and restrictions. Fixed
333         table name for MetaDataCollections collection. Implemented
334         DataSourceInformation collection. Added missing data types (probably
335         introduced in 2.0 SP1). In GetSchema, throw InvalidOperationException
336         if connection is closed and throw NotImplementedException for
337         StructuredTypeMembers collection.
338
339 2007-10-18  Gert Driesen  <drieseng@users.sourceforge.net>
340
341         * SqlConnection.cs: On 1.0 profile, IsolationLevel.Unspecified is
342         not valid. On 2.0 profile, when IsolationLevel.Unspecified is passed
343         make sure to also set SqlTransaction.IsolationLevel to
344         ReadCommitted. Modified exceptions to match MS.
345
346 2007-10-17  Nagappan <anagappan@novell.com> 
347
348         * SqlParameter.cs (ConvertToFrameworkType): Added SqlDbType.Image.
349
350 2007-10-17  Nagappan <anagappan@novell.com> 
351
352         * SqlConnection.cs: BeginTransaction does not handle
353           IsolationLevel.Unspecified, so the default is set as ReadCommited.
354           Thanks to Jerome Haltom <wasabi@larvalstage.net> for this patch. Fixes
355           bug # 333082.
356         * SqlTransaction.cs: If transaction count is greater then 0 then roll back.
357           Thanks to Jerome Haltom <wasabi@larvalstage.net> for this patch. Fixes
358           bug # 331953.
359
360 2007-10-15  Gert Driesen  <drieseng@users.sourceforge.net>
361
362         * SqlException.cs: Do not hide Message on 2.0 profile. Fixes bug
363         #333901.
364
365 2007-10-08  Marek Safar <marek.safar@gmail.com> 
366
367         * SqlParameterCollection.cs (SetParameter): Fixed missing cast.
368         
369 2007-09-27  Nagappan A <anagappan@novell.com> 
370
371         * SqlConnection.cs: Added MonoTODO appropriately.
372
373 2007-09-26  Nagappan A <anagappan@novell.com> 
374
375         * SqlCommandBuilder.cs: Code alignment.
376
377 2007-09-25  Nagappan A  <anagappan@novell.com>
378
379         * SqlInitialCatalogConverter.cs, SqlDataSourceConverter.cs:
380         NetworkLibraryConverter.cs: Added new files.
381
382         * SqlParameter.cs: 2.0 attribute changes.
383
384         * SqlDataAdapter.cs: 2.0 attribute changes.
385
386         * SqlConnectionStringBuilder.cs: 2.0 attribute changes.
387
388         * SqlConnection.cs (ClearAllPools, ClearPool): Implemented 2.0
389         APIs, other 2.0 attribute changes.
390
391         * SqlCommandBuilder.cs (GetSchemaTable, InitializeCommand):
392         Implemented 2.0 APIs, other 2.0 attribute changes.
393
394         * SqlBulkCopyColumnMappingCollection.cs: Added constructor, 2.0
395         API compatibility changes.
396
397         * SqlException.cs: 2.0 attribute changes.
398
399 2007-08-13  Nagappan A  <anagappan@novell.com>
400
401         * SqlConnection.cs (ConnectionString): 2.0 compatibility changes.
402
403         * SqlDataReader.cs (IsCommandBehavior): Fixed spelling mistake of
404         the method name.
405         (Dispose): 2.0 compatibility changes.
406
407         * SqlBulkCopy.cs (SqlRowsCopied): Fixed spelling mistake of the
408         event name.
409         (RowsCopied): Generates event when NotifyAfter is set.
410
411         * SqlCommandBuilder.cs (Dispose, RefreshSchema): 2.0 compatibility
412         changes.
413
414         * SqlClientFactory.cs (CreateDataSourceEnumerator): Removed bogus
415         TODO.
416
417         * SqlException.cs (Message): 2.0 compatibility changes.
418
419 2007-08-06  Nagappan A  <anagappan@novell.com>
420
421         * SqlCommand.cs, SqlDataReader.cs, SqlConnection.cs: When the
422         server resets the connection, now the client code also disconnects
423         the session and remove the instance from pool. Fixes bug # 81933.
424
425 2007-07-31  Nagappan A  <anagappan@novell.com>
426
427         * SqlCommand.cs (Transaction, Connection): IDbCommand Transaction
428         and Connection can be set to null. Fixes bug 82189.
429
430 2007-07-23  Nagappan A  <anagappan@novell.com>
431
432         * SqlCommandBuilder.cs (ApplyParameterInfo, GetParameterName):
433         (GetParameterPlaceholder): Implemented 2.0 missing APIs.
434
435 2007-07-22  Nagappan A  <anagappan@novell.com>
436
437         * SqlBulkCopy.cs (NotifyAfter): Implemented 2.0 property.
438         (GetColumnMetaData, GenerateColumnMetaData):
439         (ValidateColumnMapping): Implemented private method's to generate
440         and validate SqlBulkCopy headers.
441         (BulkCopyToServer): Private method to actually do the bulk copy
442         processing.
443         (WriteToServer): Implemented 2.0 missing overloaded methods.
444         (IDisposable.Dispose): Implemented 2.0 missing method.
445
446         * SqlBulkCopyColumnMappingCollection.cs (Add, CopyTo): Implemented
447         missing API.
448         (Item): Implemented missing property.
449
450         * SqlBulkCopyColumnMapping.cs: Modified the implementation of
451         Constructors to use property.
452
453         * SqlDataReader.cs (GetSqlXml, IsCommandBehaviour): Added 2.0
454         missing method.
455         (Connection): Added missing property.
456
457         * SqlParameter.cs (SetSqlDbType, ConvertToFrameworkType): Modified
458         method as internal from private.
459
460         * SqlConnection.cs: Fixed 2.0 missing feature.
461
462         * SqlException.cs: Fixed 2.0 missing feature.
463
464         * SqlClientPermission.cs: Fixed 2.0 missing feature.
465
466 2007-07-01  Gert Driesen  <drieseng@users.sourceforge.net>
467
468         * ISqlNotificationReceiver.cs: Removed.
469         * SqlClientFactory.cs: Use SqlDataSourceEnumerator from S.D.Sql and
470         marked method todo. Avoid unnessary casts. Code formatting.
471         * SqlCommand.cs: Explicit interface implementation of IDbCommand not
472         necessary on 2.0 profile. Fixes API mismatches. Avoid unnecessary
473         casts. Code formatting.
474         * SqlConnection.cs: Also use RecommendAsConfigurable instead of
475         SettingBindableAttribute on 2.0. Use StateChange event from base class
476         on 2.0. Only explicitly implement IDbConnection methods on 1.0, since
477         these are implemented by base class on 2.0 profile. Removed extra
478         explicit implementation of IDisposable since the base class implements
479         this. Code formatting.
480         * SqlDataAdapter.cs: Dispose (bool) override not necessary on 2.0
481         profile. Stubbed ICloneable.Clone. Fixes API mismatches.
482         * SqlDataReader.cs: On 2.0, IDisposable.Dispose is implemented by
483         DbDataReader. Only 1.0 profile, explicitly implemented IEnumerable
484         GetEnumerator. Code formatting.
485         * SqlDataSourceEnumerator.cs: Removed.
486         * SQLDebugging.cs: Marked sealed on 2.0. Code formatting.
487         * SqlNotificationAuthType.cs: Removed.
488         * SqlNotificationInfo.cs: Added missing fields. Code formatting.
489         * SqlNotificationSource.cs: Added missing fields. Code formatting.
490         * SqlNotificationTransports.cs: Removed.
491         * SqlNotificationType.cs: Added missing Unknown field. Code formatting.
492         * SqlParameter.cs: Removed Browsable and EditorBrowsable attributes
493         from Precision and Scale. Fixes API mismatches. Code formatting fixes.
494         * SqlTransaction.cs: On 2.0 profile, Dispose method is exposed by
495         base class. Fixes API mismatches. Code formatting fixes.
496
497 2007-06-21  Nagappan A  <anagappan@novell.com>
498
499         * SqlConnection.cs: Fixed compiler warning.
500
501 2007-06-11  Nagappan A  <anagappan@novell.com>
502
503         * SqlConnection.cs (ParseDataSource): Adds tcp support in
504         connection string. Fixes bug # 80975.
505
506         * SqlCommand.cs (Dispose): On disposing the command object, don't
507         dispose connection and transaction.
508
509 2007-06-06  Nagappan A  <anagappan@novell.com>
510
511         * SqlCommand.cs, SqlConnectionStringBuilder.cs, SqlConnection.cs:
512         Fixed 1.0 and 2.0 extras, errors as stated in class status page.
513
514         * SqlDataAdapter.cs, SqlParameter.cs:Fixed 1.0 and 2.0 extras,
515         errors as stated in class status page.
516
517         * SqlBulkCopyColumnMappingCollection.cs: Fixed 1.0 and 2.0 extras,
518         errors as stated in class status page.
519
520 2007-05-30  Nagappan A  <anagappan@novell.com>
521
522         * SqlParameter.cs (SqlParameter): Updated constructor to use the
523         new TDS RPC implementation.
524         Fixed missing attributes.
525         (SetDbType): Added new case for sql_variant type.
526         (ConvertToFrameworkType): Implemented new private method to
527         convert the data type to framework type.
528
529         * SqlParameterCollection.cs: Fixed missing attributes and
530         implemented missing methods.
531
532         * SqlConnection.cs: Fixed missing attributes.
533
534         * SqlConnectionStringBuilder.cs: Certain attributes are missing or
535         its value or they are not appropriate. Fixed them.
536
537         * SqlDataReader.cs (GetData): Method is available only under 1.0
538         profile.
539         
540         * SqlCommandBuilder.cs: Certain attributes are available only
541         under 2.0 profile, so moved them inside ifdef.
542
543         * SqlCommand.cs: Certain attributes are available only under 2.0
544         profile, so moved them inside ifdef.
545
546         * SqlBulkCopy.cs: Added new stubs.
547
548         * SqlBulkCopyColumnMappingCollection.cs: Added new stubs.
549
550 2007-05-29  Nagappan A  <anagappan@novell.com>
551
552         * SqlCommand.cs (Dispose): Command.Dispose closing
553         connection. Fixes bug # 81710. Thanks to AMC <amc1999@gmail.com>
554         for the fix.
555
556 2007-05-10  Nagappan A  <anagappan@novell.com>
557
558         * SqlClientMetaDataCollectionNames.cs: Fixed incorrect constructor
559         type.
560
561         * SqlConnectionStringBuilder.cs: Fixed missing attributes.
562
563 2007-05-09 Igor Zelmanovich <igorz@mainsoft.com>
564
565         * SqlConnectionStringBuilder.cs: added MonoNotSupported attribute.
566
567 2007-04-03  Amit Biswas  <amit@amitbiswas.com>
568
569         * SqlDataReader.cs (GetSqlBytes, GetProviderSpecificFieldType)
570         (GetProviderSpecificValue, GetProviderSpecificValues): Implemented
571         missing API.
572
573         * SqlParameter.cs (XmlSchemaCollectionDatabase): Implemented missing property
574         (XmlSchemaCollectionName): Implemented missing property
575         (XmlSchemaCollectionOwningSchema): Implemented missing property
576         (SourceColumnNullMapping): Existing implementation was not correct, Replaced the implementation
577         (.ctor): Implemented mising constructor new in .net 2.0
578
579         * SqlErrorCollection.cs (CopyTo): Implemented missing API
580
581         * SqlParameter.cs (InferSqlType): Corrected bug related to default values of
582         SqlDbType and DbType
583         (ResetSqlDbType): Implemented missing API
584         (ResetDbType): Implemented missing API  
585
586 2007-03-09  Amit Biswas  <amit@amitbiswas.com>
587
588         * SqlParameterCollection.cs (CopyTo): Implemented missing API
589
590 2007-04-02  Nagappan A  <anagappan@novell.com>
591
592         * SqlParameter.cs: Variable name fix.
593
594 2007-03-20  Nidhi Rawal  <rawalnidhi_rawal@yahoo.com>
595
596         * SqlClientFactory.cs: Added two using directives.
597         (CreateConnectionStringBuilder): Implemented the method.
598         (CreatePermission): Implemented the property.
599         
600         * SqlCommand.cs: Added one using directive.
601         (Clone): Implemented the method.
602         (Dispose): Implemented the method.
603         (BeginExecuteXmlReader): Implemented the method.
604         
605         * SqlCommandBuilder.cs (QuoteIdentifier): Implemented the method.
606         (UnquoteIdentifier): Implemented the method.
607         
608         * SqlConnection.cs (ChangePassword): Implemented the method.
609
610 2007-03-19  Nidhi Rawal  <rawalnidhi_rawal@yahoo.com>
611
612         * SqlClientFactory.cs (CanCreateDataSourceEnumerator): Implemented
613         the property.
614
615         * SqlCommand.cs (Notification): Implemented the property.
616         (NotificationAutoEnlist): Implemented the property.
617
618         * SqlDataReader.cs (VisibleFieldCount): Implemented the property.
619
620         * SqlConnectionStringBuilder.cs (TrustServerCertificate): Implemented
621         the property.
622         (TypeSystemVersion): Implemented the property.
623         (UserInstance): Implemented the property.
624         (ContextConnection): Implemented the property.
625
626         * SqlConnection.cs (FireInfoMessageEventOnUserErrors): Implemented
627         the property.
628         (StatisticsEnabled): Implemented the property.
629         
630         * SqlDataAdapter.cs (UpdateBatchSize): Implemented the property.
631
632         * SqlParameter.cs: Implemented one attribute.
633
634 2007-03-16  Andreia Gaita  <avidigal@novell.com>
635         
636         * SqlParameter.cs: Move isVariableSizeType flag to TdsMetaParameter
637         so that the TdsMetaParameter can validate itself for valid size / values.
638         * SqlCommand.cs (Execute): Call Validate on TdsMetaParameter.
639
640 2007-03-14  Nagappan A  <anagappan@novell.com>
641
642         * SqlCommand.cs (CommandType): Exception type thrown in 2.0
643         profile is different than 1.0, ArgumentOutOfRangeException.
644         (Connection): Exception type thrown in 2.0 profile is different
645         than 1.0, ArgumentOutOfRangeException.
646         (Execute): If Size property is 0 for String and Binary type, then
647         throw InvalidOperationException.
648         (ValidateCommand): Exception type thrown in 2.0 profile is
649         different than 1.0, NullReferenceException.
650
651 2007-03-09  Nagappan A  <anagappan@novell.com>
652
653         * SqlDataReader.cs: Fixed syntax erros reported in class status
654         page.
655
656 2007-03-09  Andreia Gaita  <avidigal@novell.com>
657
658         * SqlCommand.cs (ExecuteScalar): Fix returned value for 
659         stored procedure calls to return the first column of the
660         first row produced by the proc.
661
662 2007-03-08  Nagappan A  <anagappan@novell.com>
663
664         * SqlCommand.cs (CloseDataReader): Checks whether the SQL
665         connection is created or not.
666
667 2007-03-07  Andreia Gaita <avidigal@novell.com>
668
669         * SqlCommand.cs (ExecuteScalar): when calling stored procedures,
670         implement support for return of output values in the parameter
671         collection.
672
673 2007-02-16  Nidhi Rawal  <rawalnidhi_rawal@yahoo.com>
674
675         * SqlParameter.cs (CompareInfo): Implemented the property
676         CompareInfo.
677         (LocaleId): Written the property LocaleId.
678         (SqlValue): Written the propert SqlValue.
679
680 2007-02-15  Nidhi Rawal  <rawalnidhi_rawal@yahoo.com>
681
682         * SqlCommand.cs: Added some attributes which were not implemented
683         for .NET 2.0 and removed extra attribute which are not there in
684         .NET 2.0.
685
686         * SqlCommandBuilder.cs: Added some attributes that were not 
687         implemented for .NET 2.0.
688
689         * SqlParameterCollection.cs: Added some attributes that were 
690         not implemented for .NET 2.0.
691
692         * SqlConnectionStringBuilder.cs: Added some attributes that
693          were not implemented for .NET 2.0.
694         
695         * SqlConnection.cs: Added attribute that was not implemented
696         for .NET 2.0.
697
698         * SqlParameter.cs: Added some attributes which were not
699         implemented for .NET 2.0 and removed some extra attributes which
700         are not there in .NET 2.0
701
702 2007-02-09  Nagappan A  <anagappan@novell.com>
703
704         * SqlConnection.cs (SetConnectionString): Fixes bug # 80712. A
705         small typo.
706
707 2007-01-08  Nagappan A  <anagappan@novell.com>
708
709         * SqlTransaction.cs (Dispose): Fixed compliation warning.
710
711         * SqlDataReader.cs (GetValues): Length of elements to be copied was
712         decided based on the argument array passed, which caused a bug, if
713         the length of given array is more than actual column values.
714
715         * SqlCommandBuilder.cs (CatalogSeparator, SchemaSeparator)
716         (CatalogLocation): Implemented missing properties.
717         (CreateDeleteCommand, CreateInsertCommand, CreateUpdateCommand):
718         Modified private methods to take bool flag. If true, add actual
719         parameter name instead of p1, p2 etc.
720         (CreateParameter): Added overloaded private method to create
721         parameter with the actual column name.
722         (GetUpdateCommand, GetDeleteCommand, GetInsertCommand):
723         Implemented missing overloaded methods.
724         (SetRowUpdatingHandler): Implemented missing protected method.
725
726         * SqlCommand.cs: Fixed compilation warning. Removed bogus
727         MonoTODO's.
728
729 2006-12-05  Nagappan A  <anagappan@novell.com>
730
731         * SqlCommand.cs (Execute): If sql2 length is greater than 0, then
732         add ';' and the respective sql2 string and then execute the
733         string. Fixes bug # 79880.
734
735 2006-08-30  Nagappan A  <anagappan@novell.com>
736
737         * SqlConnection.cs: Implemented SqlConnection.GetSchema ().
738
739 2006-09-08  Konstantin Triger <kostat@mainsoft.com>
740
741         * SqlClientFactory.cs: implemented SqlClientFactory.CreateConnection ().
742
743 2006-07-13  Senganal T  <tsenganal@novell.com>
744
745         * SqlClientFactory.cs SqlCommand.cs SqlConnectionFactory.cs 
746         SqlClientPermission.cs SqlParameterCollection.cs SqlDataReader.cs 
747         SqlConnection.cs SqlParameter.cs SqlTransaction.cs :
748                 2.0 Api fixes
749
750 2006-05-31  Gert Driesen  <drieseng@users.sourceforge.net>
751
752         * SqlConnection.cs: Removed extra destructor, as destructor on 
753         System.ComponentModel.Component already calls Dispose.
754         * SqlParameter.cs: Removed explicit interface implementation of
755         IDataParameter.ParameterName.
756
757 2006-05-26  Senganal T  <tsenganal@novell.com>
758
759         * SqlParameter.cs :
760                 - InferSqlType : if value is null or DBNull.Value, retain the
761                 current parameter type.
762
763 2006-04-18  Senganal T  <tsenganal@novell.com>
764
765         * SqlConnection.cs :
766                 - SetConnectionString : set the pareameter to default values
767                 if connection string is empty or null
768                 - Open : Raise InvalidOperationException if Connection String
769                 is empty or null
770                 - Dispose : Test exception not raised if dispose called on a
771                 connection with empty connection string
772
773         slight modification of the patch by Jonel Rienton
774
775 2006-04-07  Senganal T  <tsenganal@novell.com>
776
777         * SqlCommandBuilder.cs :
778                 * CreateDeleteCommand () 
779                 * CreateUpdateCommand () 
780                 * CreateInsertCommand () 
781                         - Changed the signature. Do not need DataRow parameter 
782                         as the Query generated is parametric.
783                         - Correct the null-check term in the WhereClause, set the
784                         correct properties for null-check parameter
785                         fixes #78027
786                         - Modified the generated query to match the query as
787                         generated by 2.0. We now ignore null-check in the
788                         whereclause if the Column does not allow nulls.
789                 * ctor () : Set QuotePrefix and QuoteSuffix for 2.0 profile
790                 * GetUpdateCommand ()
791                 * GetInsertCommand ()
792                 * GetDeleteCommand ()
793                         - Do not create new command everytime. Create only if
794                         not already created.
795                 * RefreshSchema : Reset the commands.
796
797 2006-02-17  Chris Toshok  <toshok@ximian.com>
798
799         * SqlCommand.cs, SqlCommandBuilder.cs, SqlConnection.cs,
800         SqlDataAdapter.cs: remove DataSysDescription attributes for >= 2.0
801
802 2006-02-17  Chris Toshok  <toshok@ximian.com>
803
804         * SqlDataReader.cs: remove VisibleFieldCount property.
805
806 2006-02-10  Senganal T  <tsenganal@novell.com>
807         * SqlDataReader.cs :
808                 - GetBytes : Read binary/blob/clob data sequentially when
809                 CommandBehavior is set to SequentialAcccess
810                 - GetChars : Read String/clob data sequentially when CommandBehavior
811                 is set to SequentialAccess
812         * SqlCommand.cs :
813                 - ExecuteReader : set SequentialAccess property on TDS
814                 - CloseDataReader : Reset the command behavior
815
816 2006-01-27  Senganal T  <tsenganal@novell.com>
817
818         * SqlCommandBuilder.cs :
819                 - Modified  CreateUpdateCommand,CreateDeleteCommand , to not include
820                 column name in the query if its a expression col.
821                 Also, modified the queries to match the generated queries in ms.net
822         * SqlCommand.cs :
823                 - Modifed Prepare, to check if Parameter is explicitly initialized
824         * SqlParameter.cs :
825                 - Added CheckIfInitialized : Checks if datatype is explicitly set and
826                 non-zero size is set for variable datatypes.
827         * SqlDataReader.cs :
828                 - Added code for GetSqlBinary ()
829                 - Fixed GetFieldCount ()
830                 - Added more checks and exceptions. 
831
832 2006-01-17  Senganal T  <tsenganal@novell.com>
833
834         * SqlCommandBuilder.cs
835                 - Modified CreateNewCommand () : Clean up any existing parameter list
836                 before reusing the command.Fixes #77225
837
838 2005-11-24  Senganal T  <tsenganal@novell.com>
839
840         * SqlConnection.cs 
841                 - Modifications to get the correct Packet Size
842
843 2005-11-21  Senganal T  <tsenganal@novell.com>
844
845         * SqlClientFactory.cs
846         * SqlCommandBuilder.cs
847         * SqlParameterCollection.cs
848         * SqlDataReader.cs
849         * SqlDataAdapter.cs
850         * SqlParameter.cs
851         * SqlTransaction.cs
852
853         Added stubs and other changes for ADO.NET 2.0 compatibility
854         
855 2005-11-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
856
857         * SqlConnection.cs: don't throw NotImplementedException when using
858         'PERSIST SECUTIRY INFO'. Just do nothing.
859
860 2005-10-27  Senganal T  <tsenganal@novell.com>
861
862         * SqlCommand.cs 
863         * SqlDataReader.cs 
864         
865         Made changes so that the number of rows affected can be got directly from 
866         Tds regardsless of the type of query.Fixes bug #75698
867
868 2005-10-19  Senganal T  <tsenganal@novell.com>
869
870         * SqlConnection.cs (SetProperties) :
871                 - Added support for AttachDBFileName
872
873 2005-10-19  Senganal T  <tsenganal@novell.com>
874         
875         * SqlException.cs (Constructor)
876                 - Modified the constructor, so that the message parameter
877                 of base class is not the same as that of the Exception message.
878                 fixes bug #76468
879                 
880 2005-09-24  Sureshkumar T  <tsureshkumar@novell.com>
881
882         * SqlParameterCollection.cs (AddWithValue): added method. patch
883         from awaddell@fnfr.com (Andy Waddell).
884
885 2005-09-21 Senganal T <tsenganal@novell.com>
886
887
888         * SqlConnection.cs : 
889                 - Set the correct Default Values for Parameters.
890                 - Added Argument Checks (where missing) for the Properties and 
891                 throw the correct exception on error.
892                 - Modified SetDefaultParameters() to make sure that the parameters
893                 are all reset to default values everytime it is called.
894                 - Modified SetProperties() to take into account the order of the 
895                 keywords in the ConnectionString.
896
897         SqlConnection Fixes for the failing sqlserver connected-mode testcases 
898         in ProviderTest/System.Data.SqlClient/SqlConnectionTest.cs
899
900 2005-09-21 Senganal T <tsenganal@novell.com>
901
902         * SqlTransaction.cs : Modifed the Rollback() method, so that
903         connection can be used for another transaction after the previous
904         transaction is rolled back. fixes bug 75904
905
906 2005-09-02 Umadevi S <sumadevi@novell.com>
907         
908         * Removed SqlResultSet.cs file
909
910 2005-08-26  Sureshkumar T  <tsureshkumar@novell.com>
911
912         * SqlConnection.cs (Open): enable sp_reset_connection.
913
914 2005-08-25  Sureshkumar T  <tsureshkumar@novell.com>
915
916         * SqlCommandBuilder.cs: BuildInformation (): continue on columns
917         who don't have basetablename.
918
919 2005-08-12  Daniel Morgan <danielmorgan@verizon.net>
920
921         * SqlCommandBuilder.cs: update command builder based on
922         OdbcCommandBuilder latest changes to fix regression 
923         of bug 75552
924         
925 2005-08-05  Sureshkumar T  <tsureshkumar@novell.com>
926
927         * SqlCommandBuilder.cs: Set SourceVersion property to the created
928         parameters as it is used by the Adapter's Update method.
929
930 2005-07-22  Sureshkumar T  <tsureshkumar@novell.com>
931
932         * SqlCommandBuilder.cs, SqlParameterCollection.cs,
933         SqlConnection.cs, SqlParameter.cs:
934         - updated attributes & attribute descriptions to match with
935         masterinfos.
936
937 2005-07-16  Daniel Morgan <danielmorgan@verizon.net>
938
939         * SqlCommandBuilder.cs: CreateUpdateCommand should get the current value, not
940         the orginal value when setting one of the SET variables
941
942 2005-07-15  Sureshkumar T  <tsureshkumar@novell.com>
943
944         * SqlCommandBuilder.cs:
945         - set_DataAdapter: unsubscribe event if DataAdapter is reset.
946         - CreateInsertCommand, CreateUpdateCommand, CreateDeleteCommand:
947         if column mapping is missing, use the source column name. use
948         proper version to get the data. 
949         - RowUpdatingHandler: set status to continue to actually process
950         the query.
951
952 2005-07-04  Ben Maurer  <bmaurer@ximian.com>
953
954         * SqlError.cs: Patch from dezelin@gmail.com to fix serialization.
955
956 2005-06-29  Sureshkumar T  <tsureshkumar@novell.com>
957
958         * SqlConnection.cs: Open (): catch TdsInternalException and throw
959         SqlException.
960         * SqlException.cs: code re-organised to pass message as well with
961         the exception.
962
963 2005-06-23  Sureshkumar T  <tsureshkumar@novell.com>
964
965         * SqlConnectionStringBuilder.cs: simplified multiple keyword
966         mappings and allowed-key checking. fixed Item, Remove,
967         ContainsKey, ShoudSerialize, TryGetValue implementations.
968
969 2005-06-21  Sureshkumar T  <tsureshkumar@novell.com>
970
971         * SqlConnectionStringBuilder.cs: Connection String Builder class
972         for SqlClient Data Provider.
973
974 2005-06-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
975
976         * SqlParameter.cs: moved the 'using S.D.SqlTypes' out of NET_2_0. Fixes
977         the build.
978
979 2005-06-01  Sureshkumar T  <tsureshkumar@novell.com>
980
981         * SqlParameter.cs: Parameter's value can be SqlTypes. Convert to
982         framework type to pass to TDS layer. Fixes bug #75044.
983
984 2005-05-24 Umadevi S <sumadevi@novell.com>
985         * fixed some 2.0 and 1.0 specific fields/attributes for various classes.
986         * Added SqlClientMetaDataCollectionNames.cs, Implemented some 2.0
987         properties for SqlParameterCollection for the bulkcopy feature.
988         
989
990 2005-05-20 Kornél Pál <http://www.kornelpal.hu/>
991         
992         * Fixed Bug #53169 - SqlDataReader incorrectly returns bigint as decimal
993                 Note: The fix works around the limitations of TDS 7.0 to avoid this
994                 difference between Mono and .NET Framework TDS 8.0 should be used instead.
995
996 2005-05-20 Umadevi S <sumadevi@novell.com>
997         
998         * Fixed Bug 74948 - SqlParameter also takes DBNull Value.
999                 Correct some attributes stuff of 1.1 and 2.0 for SqlParameter.cs
1000
1001 2005-05-20 Umadevi S <sumadevi@novell.com>
1002
1003         * Continuing on implementation for bulkcopy and notification
1004                 Added files SqlNotificationEventArgs.cs, OnChangeEventHandler.cs
1005                 Modified SqlRowUpdatingEventArgs.cs
1006
1007 2005-05-19 Umadevi S <sumadevi@novell.com>
1008         
1009         * For implementation of bulkcopy and notifications added files
1010                 SqlBulkCopyOptions.cs,SqlBulkCopyColumnMapping.cs,SqlNotificationAuthType.cs
1011                 SqlNotificationTransports.cs,SqlRowsCopiedEventArgs.cs, SqlRowsCopiedEventHandler.cs
1012
1013 2005-05-19  Umadevi S <sumadevi@novell.com>
1014
1015         *  Corrected types,enum values of SqlNotificationType,SqlNotificationSource,
1016                 SqlNotificationInfo and added new method in SqlRowUpdatingEventArgs.cs
1017         (For implementation of bulkcopy/notifications)
1018
1019 2005-04-19  Sureshkumar T  <tsureshkumar@novell.com>
1020
1021         * SqlDataReader.cs: NextResult (): Re-create schema table for each
1022         result set. don't re-use, as it may be referenced from somewhere.
1023
1024 2005-04-07  Sureshkumar T  <tsureshkumar@novell.com>
1025             Ankit Jain     <radical@corewars.org>
1026
1027         * SqlConnection.cs: Implemented additional connection string
1028         property "Asynchronous Processing".
1029
1030         * SqlCommand.cs: Implemented Asynchronous command execution API.
1031
1032         * SqlAsyncState.cs: A internal state object for asynchronous
1033         operations.
1034
1035         * SqlAsyncResult.cs: Added. Class to hold result for asynchronous
1036         queries.
1037
1038 2005-03-28  Sureshkumar T  <tsureshkumar@novell.com>
1039
1040         * SqlCommand.cs: Execute: Add a semicolon at the end of
1041         CommandText. Multiple semicolon's are not being complained.
1042
1043         fixes bug #74134.
1044
1045 2005-03-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1046
1047         * SqlConnection.cs: added a finalizer for correct implementation of the
1048         IDisposable pattern.
1049
1050 2005-03-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1051
1052         * SqlException.cs: make it serialization-compatible with MS. Patch by
1053         Aleksandar Dezelin. Closes bug #73596.
1054
1055 2005-03-08  Sureshkumar T  <tsureshkumar@novell.com>
1056
1057         * SqlDataReader.cs: Call base constructor with CommandBehavior
1058         parameter instead of passing DbCommand object. The internal base
1059         class with DbCommand Parameter is removed.
1060
1061 2005-03-07  Sureshkumar T  <tsureshkumar@novell.com>
1062
1063         * SqlCommand.cs : Set CommandBehavior on
1064         ExecuteReader,ExecuteScalar,ExecuteNonQuery. This is used in
1065         CloseDataReader.
1066
1067         This fixes bug #73252.
1068
1069 2005-03-03  Sureshkumar T  <tsureshkumar@novell.com>
1070
1071         * SqlClientFactory.cs: While creating command, create using
1072         DbConnectionFactory as DbConnectionBase.CreateDbCommand needs to
1073         have a connection factory.
1074
1075         * SqlConnection.cs: Added an internal constructor which takes
1076         DbConnectionFactory.
1077
1078         * SqlConnectionFactory.cs: Added. Concrete class for abstract
1079         factory DbConnectionFactory.
1080
1081 2005-02-22  Sureshkumar T  <tsureshkumar@novell.com>
1082
1083         * SqlDataReader.cs: GetBytes: return the length of the data if
1084         output buffer is null. if not, copy the values to buffer and
1085         return the bytes actually read.
1086
1087 2005-02-02  Sureshkumar T  <tsureshkumar@novell.com>
1088
1089         * SqlConnection.cs: 
1090         - Database: return db name from database if connection open,
1091         otherwise take from connection string.
1092         - Set default values for parameters in the constructor itself.
1093         - Dangling else problem with Close method.
1094         - reset values of parms (TdsConnectionParameters) rather setting
1095         to null.
1096         - set disposed to false in Open method
1097         - finally call base.Dispose in Dispose (bool)
1098
1099         Fixes nunit regressions SqlConnectionTest:DefaultConnectionValues
1100         and SqlConnectionTest:DatabaseSynonyms. 
1101
1102 2005-01-27  Sureshkumar T  <tsureshkumar@novell.com>
1103
1104         * SqlCommand.cs (DeriveParameters): Change parameter name to
1105         "procedure_name".
1106         * SqlParameter.cs (SqlParameter (object [])) : call default
1107         constructor to create Tds.Metaparameter.
1108
1109         fixes bug #63122.
1110
1111 2005-01-03  Sureshkumar T  <tsureshkumar@novell.com>
1112
1113         * SqlCommand.cs: Fixed bug #68973. Reset Tds.RecordsAffected to 0
1114         for each execute statement.
1115         
1116 2004-11-25  Sureshkumar T  <tsureshkumar@novell.com>
1117
1118         These changes are for 2.0 profile only. These changes implement
1119         the generic data base access technique using Provider Factory
1120         Implementation. These classes need to be dervided from abstract
1121         base classes so that the corresponding factory classes are
1122         created when calling CreateCommand, CreateParameter, etc.
1123         
1124         * SqlClientFactory.cs: Provider Factory class  Implementaion for SqlServer
1125         * SqlParameter.cs: Change base classes and override methods.
1126         * SqlParameterCollection.cs:  Change base classes and override methods.
1127         * SqlTransaction.cs:  Change base classes and override methods.
1128         * SqlDataSourceEnumerator.cs: DataSource Enumerator stubs.
1129         * SqlDataReader.cs: Change base classes and override methods.
1130         * SqlConnection.cs: Change base classes and override methods.
1131         * SqlCommandBuilder.cs: Change base classes and override methods.
1132         * SqlCommand.cs: Change base classes and override necessary methods.
1133
1134 2004-10-14 Umadevi S <sumadevi@novell.com>
1135         * SqlCommand.cs - Implemented the clone method correctly.
1136          (fixed bug 67301)
1137
1138 2004-10-06 Umadevi S <sumadevi@novell.com>
1139         * ISqlNoticationReceiver.cs - changed namespace
1140         * Added files SqlNotificationType.cs, SqlNotificationInfo.cs, SqlNotificationSource.cs
1141
1142 2004-09-24  Umadevi S <sumadevi@novell.com>
1143         * SqlTransaction.cs - Dispose will not call rollback incase the transaction is not open.
1144
1145 2004-09-14  Sebastien Pouliot  <sebastien@ximian.com>
1146
1147         * SqlClientPermission.cs: Added internal constructor accepting an Sql
1148         ClientPermissionAttribute parameter (using base class protected ctor).
1149         * SqlClientPermissionAttribute.cs: Copy now use the new SqlClient
1150         Permission constructor.
1151
1152 2004-09-13  Sebastien Pouliot  <sebastien@ximian.com>
1153
1154         * SqlClientPermission.cs: Mostly completed (needs tests).
1155         * SqlClientPermissionAttribute.cs: Completed.
1156
1157 2004-09-02 Umadevi S <sumadevi@novell.com>
1158         * SqlCommand.cs - ExecuteNonQuery to return -1 incase of executing a storedprocedure
1159
1160 2004-08-16  Gert Driesen <drieseng@users.sourceforge.net>
1161
1162         * SqlConnection.cs: added TODO on ConnectionString for keywords
1163         that are not yet implemented. check value of Integrated Security
1164         keyword, check value of bool keywords, improve error reporting
1165         for int keywords, added support for the following keyword 
1166         synonyms : APP, TIMEOUT, NETWORK, PERSISTSECURITYINFO, WSID,
1167         LANGUAGE, USER. Throw NotImplementedException when encrypt keyword
1168         is set to true, enlist keyword is set to false or attachdbfilename
1169         keyword (or one of its synonyms) is set. Added FIXME for PERSIST
1170         SECURITY INFO keyword, throwing a NotImplementedException here
1171         would break lots of apps
1172
1173 2004-08-16  Gert Driesen <drieseng@users.sourceforge.net>
1174
1175         * SqlConnection.cs - spaces to tabs
1176
1177 2004-08-12  Sureshkumar T <tsureshkumar@novell.com>
1178         * SqlDataReader.cs - In Close method, the remaining resultsets are drained
1179                              out, to read output parameters & to avoid stream overlap
1180
1181 2004-06-30 Umadevi S <sumadevi@novell.com>
1182         * SqlCommand.cs : In the Execute Method the commandbehavior parameters were ignored correct
1183 these
1184
1185 2004-06-22  Atsushi Enomoto <atsushi@ximian.com>
1186
1187         * SqlCommandBuilder.cs : Avoid cast exception caused by DbNull.
1188
1189 2004-06-18 Umadevi S <sumadevi@novell.com>
1190         * SqlCommand.cs - ExecuteNonQuery returns -1 in all cases except
1191                 insert,update or delete.
1192
1193 2004-06-18 Umadevi S <sumadevi@novell.com>
1194         * SqlConnection.cs - handled null being passed as a connectionstring
1195           - checked for minimal set of parameters in connectionstring.
1196           - handled unrecogonized keywords similar to MS.NET
1197
1198 2004-06-17 Umadevi S <sumadevi@novell.com>
1199         * SqlTransaction.cs - fixed  multiple rollbacks being called causes invalidoperationexception
1200
1201 2004-06-04  Gert Driesen <drieseng@users.sourceforge.net>
1202
1203         * SqlClientPermission.cs: removed extra CreateInstance
1204         method
1205
1206 2004-06-02  Gert Driesen <drieseng@users.sourceforge.net>
1207
1208         * SQLDebugging.cs: added missing attributes, marked ctor
1209         public to match MS.NET
1210
1211 2004-05-22  Atsushi Enomoto <atsushi@ximian.com>
1212
1213         * SqlClientPermission.cs : don't use chained obsolete .ctor.
1214
1215 2004-05-20  Gert Driesen (drieseng@users.sourceforge.net)
1216
1217         *  SqlClientPermissionAttribute.cs: change AllowMultiple and
1218         Inherited to match .NET
1219
1220 2004-05-20 Umadevi S <sumadevi@novell.com>
1221
1222         * Fixed bug 58406- implemented the hasrow method, test program used
1223         to test with the bug report                                                        
1224
1225 2004-05-13  Umadevi S  <sumadevi@novell.com>
1226         
1227         *  SqlClientPermission.cs, SqlDataReader.cs - added missing methods with TODO tags
1228         *  SqlCommand.cs, SqlDataAdapter.cs - implemented ToolboxItemAttribute
1229         *  SQLDebugging.cs - Added new file with a TODO tag     
1230         
1231 2004-04-05  Lluis Sanchez Gual  <lluis@ximian.com>
1232
1233         * SqlConnection.cs: Use connection pool implemented in Mono.Data.Tds.
1234
1235 2004-04-01  Lluis Sanchez Gual  <lluis@ximian.com>
1236
1237         * SqlDataReader.cs: Null values are now represented with DBNull instances.
1238           Deal with this.
1239
1240 2004-03-14  Tim Coleman <tim@timcoleman.com>
1241         * SqlCommand.cs SqlConnection.cs:
1242                 Changes from two patches by Andres Taylor
1243                 <andres@rotselleri.com>
1244
1245 2004-03-12  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
1246
1247         * SqlParameter.cs: DO NOT USE the consts scheme if types can be referenced directly!
1248
1249 2004-01-10  Atsushi Enomoto <atsushi@ximian.com>
1250
1251         * SqlClientPermission.cs : Fixed NET_2_0 build related to 
1252           obsolete attribute problem (see DbDataPermission.cs)
1253
1254 2003-12-28  Tim Coleman <tim@timcoleman.com>
1255         * SqlResultSet.cs:
1256                 Stubbed out this class.
1257
1258 2003-12-23  Tim Coleman <tim@timcoleman.com>
1259         * SqlConnection.cs:
1260                 Improved connection string parsing.  See
1261                 System.Data.Common.DbConnectionString for source.
1262
1263 2003-12-21  Tim Coleman <tim@timcoleman.com>
1264         * SqlConnection.cs:
1265                 Enable Integrated Security
1266
1267 2003-12-19  Tim Coleman <tim@timcoleman.com>
1268         * ISqlNotificationReceiver.cs SqlResultSet.cs:
1269                 New stubs added
1270         * SqlClientPermission.cs:
1271                 Fix constructor for 1.2
1272
1273 2003-12-04  John Luke  <jluke@cfl.rr.com>
1274
1275         * SqlXmlTextReader.cs: applied patch from Chris Masters <neeeeeep@bigpond.com>
1276         fix peek so it checks if it is at the end and also to make sure that if Read()
1277         advances the position past the end of the localBuffer array, it makes
1278         a call to GetNextBuffer(). fixes bug #40253 System.IndexOutOfRangeException when
1279         using SqlCommand.ExecuteXmlReader()
1280
1281 2003-11-20  Joerg Rosenkranz  <JoergR@voelcker.com>
1282
1283         * SqlConnection (SetDefaultConnectionParameters):
1284         Changed default value of WORKSTATION ID to reflect real
1285         host name instead of "localhost".
1286
1287 2003-11-16 Ben Maurer  <bmaurer@users.sourceforge.net>
1288
1289         * SqlParameterCollection.cs (Clear): Clear needs to take
1290         the parameter out of the collection so that it can be used
1291         again.
1292         (Remove):
1293         (RemoveAt): Ditto.
1294
1295 2003-10-03  Diego Caravana  <diego@toth.it>
1296
1297         * SqlCommand.cs: no change.
1298
1299         * SqlConnection.cs (Close): Added checks for null instance
1300         variables.
1301
1302         * SqlParameter.cs (Direction): Now handles parameters of type
1303         ReturnValue and InputOutput.
1304
1305         * SqlParameterCollection.cs (IndexOf(string)): Search for
1306         SqlParameter object in list is done by obtaining ParameterName
1307         attribute, not directly through list.IndexOf().
1308         
1309 2003-08-22  Duncan Mak  <duncan@ximian.com>
1310
1311         * SqlCommand.cs (ExecuteNonQuery): Return
1312         Connection.Tds.RecordsAffected if it is successful.  Patch from
1313         Jörg Rosenkranz <joergr@voelcker.com>.
1314
1315         This is part of a fix to bug #40315.
1316
1317 2003-08-20  Duncan Mak  <duncan@ximian.com>
1318
1319         * SqlConnectionPool.cs (ReleaseConnection): A patch from Joerg
1320         Rosenkranz <JoergR@voelcker.com>. Currently, if a connection is
1321         closed by an external event (network problem, etc.) it is pushed
1322         back into the connection pool. The next Open call retrieves this
1323         invalid connection which leads to exceptions when executing
1324         statements.
1325
1326         This patch fixes this problem. This closes bug #47429.
1327
1328 2003-07-04  Miguel de Icaza  <miguel@ximian.com>
1329
1330         * SqlDataReader.cs: Added extra information to the exceptions
1331         thrown by all the GetXXXX methods.
1332
1333 2003-03-15  Daniel Morgan <danmorg@sc.rr.com>
1334
1335         * SqlConnection.cs: if Server in the ConnectionString
1336         is set to "(local", use "localhost" as the hostname
1337         to connect
1338
1339 2003-03-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1340
1341         * SqlException.cs: implemented GetObjectData ().
1342
1343 2003-02-16  Daniel Morgan <danmorg@sc.rr.com>
1344
1345         * ChangeLog: added this file
1346
1347         * SqlConnection.cs: - parse data source for 3 possible uses:
1348         "Server=hostname", 
1349         "Server=hostname\\instancename", 
1350         "Server=hostname,port" and open the connection based on the
1351         resulting server name and port.  
1352         - Added support for named instances
1353         by discovery of the sql server tcp port via the sql monitor (udp port 1434)
1354         thanks to Phillip Jerkins (Phillip.Jerkins@morgankeegan.com) contribution.
1355         Also, thanks to Gonzalo and Tim for their help with timeouts.
1356