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