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