File: ChangeLog

package info (click to toggle)
myodbc 5.1.10-3
  • links: PTS, VCS
  • area: main
  • in suites: jessie, jessie-kfreebsd
  • size: 2,984 kB
  • ctags: 2,099
  • sloc: ansic: 33,649; cpp: 1,360; xml: 1,261; sh: 353; makefile: 264; perl: 43
file content (1033 lines) | stat: -rw-r--r-- 44,876 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
5.1.10

  Functionality added or changed:

  Bugs fixed:
  * In some cases TIMESTAMP field could be described as SQL_NO_NULLS.
    (Bug #13532987)
  * SQLFetch has to return error if indicator pointer is NULL for NULL value.
    (Bug #13542600)
  * A failure on one stmt causes another stmt to fail. (Bug #13097201/#62657)

----

5.1.9 (04-Oct-2011)

  Functionality added or changed:
  * Support of windows authentication.

  Bugs fixed:
  * SQLFetch() did not return SQL_ERROR if connection was dropped due to a
    timeout. (Bug #39878)
  * MS Access with VARCHAR NOT NULL columns. (Bug #31067)
  * sqlwcharchr might read one SQLWCHAR after end of string. (Bug #61586)
  * Column parameter binding makes SQLExecute not to return SQL_ERROR on
  * If pre-execution failed some catalog functions called right after that
    would return only one row. (Bug #12824839)
  * MyODBC driver does not call mysql_thread_end() when the thread ends causing error
    messages such as this: Error in my_thread_global_end(): 1 threads didn't exit
    (Bug #57727)

  Built using MySQL 5.5.16.

----

5.1.8 (08-Nov-2010)

  Functionality added or changed:

  Bugs fixed:
  * MySQL ODBC Connector on Windows 2008 64bit. (Bug #56233)
  * SQLNumResultCols() causes the driver to return only first row in the
    resultset. (Bug #56677)
  * Connector/ODBC 5.1 series requires uninstall prior to installing a new
    version. (Bug #54314)
  * SQLDescribeCol and SQLColAttribute cannot be called before SQLExecute.
    (Bug #56717)
  * Errors would not be reported in bulk upload. (Bug #56804)
  * MSI installer does not set InstallLocation value in registry. (Bug #56978)
  * SQLProcedureColumns doesn't work with certain data/parameters combinations.
    (Bug #57182)
  * SQLRowCount return wrong result row count for SQLTables and some other 
    catalog functions. (Bug #57182)


  Built using MySQL 5.1.46sp1.

----

5.1.7 (24-Aug-2010)

  Functionality added or changed:
  * Options in the GUI are groupped on named tabs.
  * Added connection option INTERACTIVE that tells driver that client is
    ineractive and interactive_timeout has to be used. (Bug #48603)
  * Added parameters arrays support. (Bug #48310)
  * SQLTables uses now INFORMATION_SCHEMA. Added connection option to use old code.
    (Bug #43644)
  * Added GUI options for MIN_DATE_TO_ZERO and ZERO_DATE_TO_MIN connection
    options. (Bug #30539)
  * Function SQLProcedureColumns() implemented. (Bug #50400)

  Bugs fixed:
  * If NO_BACKSLASH_ESCAPES mode is used on a server, escaping binary data
    can lead to server query parsing errors. (Bug #49029)
  * Error if unsupported client character set is encountered(for wchar data).
    (Bug #36996)
  * Binding bit field to a numeric types doesn't work. (Bug #32821)
  * Conversion flags are not complete. (Bug #43855)
  * SQL_ATTR_MAX_ROWS make some SELECT statement invalid. (Bug #49726)
  * Certain column attributes aren't correct for date columns. (Bug #44576)
  * SQLPrepare causes Prefetch of table. (Bug #46411)
  * If there are foreign key constraints with same name for tables with same
    names in 2 schemas, SQLForeignKeys can return rows for both
    schemas in query about one of those tables. (Bug #49660)
  * SQLForeignKeys included in results rows for foreign keys pointing to unique fields
    (Bug #51422)
  * SQLPrimaryKeys returns mangled strings. (Bug #36441)
  * Spaces in connection string aren't removed (Bug #45378)
  * SQLColumns returns wrong transfer octet length. (Bug #53235)
  * Retrieving of current catalog at the moment when connection is not ready for
    that(broken, not all pending results processed) leads to application crash.
    (Bug #46910)
  * SQLForeignKeys unacceptable performance getting imported FK. (Bug #39562)
  * SQLTablePrivileges requires SELECT privilege on mysql database. (Bug #50195)
  * Column octet length includes terminating null byte. (Bug #54206)
  * Wrong type returned by SQLColAttribute(SQL_DESC_PRECISION...) in 64-bit
    systems. (Bug #55024)

----

5.1.6 (09-Nov-2009)

  Functionality added or changed:
  * Providing an empty string as the catalog argument to SQLTables()
    will return an empty result set. A catalog must have a name.
  * Remove use of "old" SQLLEN/SQLULEN types aliases. They are not
    supported in unixODBC 2.2.13 and later 64-bit builds. Removed
    SQLROWCOUNT, SQLROWSETSIZE, SQLTRANSID, SQLROWOFFSET.
  * Connection parameters can be specified individually instead of
    using OPTIONS bitflags. (See connection parameters documentation)
  * Edit controls for INITSTMT and CHARSET DSN options are added to the native
    Windows GUI. (Bug #40932)
  * Length/Indicator pointer is now stored and used internally as pointer to
    SQLLEN and not to SQLINTEGER. Using SQLINTEGER pointers as
    StrLen_or_IndPtr parameter of SQLBindParameter/SQLBindCol may cause crash
    on 64bit platforms.
  * Query log is not overwritten, but appended instead. (Bug #44965)
  * Fixed tab order in Windows datasource config dialog. (Bug #42905)

  Bugs fixed:
  * Add support for data-at-execution with positioned insert/update
    (Bug #37649)
  * Output string length from SQLDriverConnect() includes NULL-term
    (Bug #38949)
  * SQLGetInfo() returns 0 for SQL_CATALOG_USAGE info (Bug #39560)
  * SQLDriverConnect() may truncate output string erroneously
    (Bug #37278)
  * SQLTables() doesn't properly handle empty strings to list catalogs
    and tables. (Bug #39561)
  * Calling SQLDriverConnect() with no output buffer will crash if not
    prompting. (Bug #40316)
  * SQLTables() doesn't return the catalog name if the table is given
    and the catalog argument is NULL. (Bug #39957)
  * Driver crashes when attempting to retrieve data in a character set
    not compiled into libmysql. (Bug #39831)
  * SQLGetTypeInfo() doesn't return any rows SQL_TIMESTAMP on an ODBC v2
    connection. (Bug #30626)
  * Positioned update with SQL_C_NUMERIC loses prec/scale values
    (Bug #39961)
  * ADO adUseServer cursor is lost after updating adLongVarWChar field
    (Bug #26950)
  * Calling SQLDescribeCol() with a NULL buffer and non-zero buffer
    length causes a crash. (Bug #41942)
  * NULL parameters don't work correctly with ADO. (Bug #41256)
  * Unable to retrieve null DECIMAL fields in ADO. (Bug #41081)
  * Fix positioned update using data-at-execution, bind offsets and
    row-wise binding. (Bug #36071)
  * SQLConfigDataSource may fail with: Cannot find driver (Bug #41796)
  * FLAG_NO_BIGINT still returns bigint for SQLDescribeCol()
    (Bug #17679)
  * Random access violation exceptions (0xC0000005) in ASP scripts in the
    SQLSetConnectAttrW. (Bug #44971)
  * Binding SQL_C_BIT to an integer column didn't work. (Bug #39644)
  * Inserting a new record using SQLSetPos if the table is from different than
    current catalog. (Bug #41946)


  Includes changes from Connector/ODBC 3.51.27.

  Built using MySQL 5.1.34sp1.

----

5.1.5 (18-Aug-2008)

  Functionality added or changed:
  * Added FLAG_NO_BINARY_RESULT connection option to always handle
    binary function results as character data. (Bug #29402)

  Bugs fixed:
  * Some catalog functions used fixed-sized buffers for handling
    arguments that could be overrun, and misinterpreted some arguments
    as patterns when they should be treated as identifiers. (Bug #36275)
  * SQLDriverConnect() returned SQL_ERROR when the user cancelled
    the dialog box instead of SQL_NO_DATA. (Bug #36293)
  * System DSN lookup (using ODBC_BOTH_DSN) fails on Windows XP.
    (Bug #36203)
  * SQLProcedures() followed by SQLFreeStmt() crashes (Bug #36069)
  * ADO adUseServer cursor is lost after updating adLongVarWChar field
    (Bug #26950)
  * SQL_TYPE_TIMESTAMP and SQL_TYPE_TIME parameters were incorrectly
    included when parameters were expanded. (Bug #37342)
  * DSN-less connection prompting cannot look up driver entry
    (Bug #37254)

  Includes changes from Connector/ODBC 3.51.26.

  Built using MySQL 5.0.60sp1.

----

5.1.4 (15-Apr-2008)

  Bugs fixed:
  * SQLGetDiagRec() sometimes returned SQL_SUCCESS but no error
    message. (Bug #33910)
  * Driver installer (myodbc-installer.exe) fails to create a new DSN
    (Bug #35776)
  * Get wrong result with decimal(8,2) field type (Bug #35920)

  Includes changes from Connector/ODBC 3.51.25.

  Built using MySQL 5.0.56sp1.

----

5.1.3 (26-Mar-2008)

  Functionality added or changed:
  * Added SSLVERIFY connection option to verify server certificate. By default
    certificate is not verified now. (Bug #34648)
  * Database list height is autoadjusted in Windows GUI. (Bug #33918)

  Bugs fixed:
  * Recordset-based update fails if blob field is queried. (Bug #19065)
  * Descriptor records were not cleared correctly when calling
    SQLFreeStmt(SQL_UNBIND). (Bug #34271)
  * The driver incorrectly reported that the SQL standard CAST() and
    CONVERT() functions were supported. (Bug #33808)
  * Unresolved symbols "min" and "max" in libmyodbc3.so w/gcc 4.2. 
    (Bug #34256)
  * Notorious #DELETED problem when linking tables in Access and BIGINT PK
    (Bug #24535)
  * MyODBC 51/Access unable to use DBEngine.RegisterDatabase to create a DSN
    (Bug #33825)
  * Unable to use surrogate pairs into with unicode column. (Bug #34672)
  * SQLGetData w/SQL_C_WCHAR gives incorrect data. (Bug #34429)

  Includes changes from Connector/ODBC 3.51.24.

  Built using MySQL 5.0.52.

----

5.1.2 (12-Feb-2008)

  Functionality added or changed:
  * SQLForeignKeys uses INFORMATION_SCHEMA when it is available on the server,
    which allows more complete information to be returned.
  * Disabled MYSQL_OPT_SSL_VERIFY_SERVER_CERT when using an SSL connection.
  * Explicit descriptors are implemented. (Bug #32064)
  * Changed SQL_ATTR_PARAMSET_SIZE to return an error until support for it
    is implemented.

  Bugs fixed:
  * Tried to use the already-entered database when connecting to get list of
    databases in Windows setup library. (Bug #33615)
  * SQLForeignKeys returned an empty string for the schema columns instead of
    a NULL. (Bug #19923)
  * SQLGetInfo() reported characters for SQL_SPECIAL_CHARACTERS that were
    not encoded correctly. (Bug #33130)
  * Adding or updating a row using SQLSetPos() on a result set with aliased
    columns would fail. (Bug #6157)
  * Changing the DSN name when editing a DSN left behind the DSN
    under the old name in addition to creating the new entry. Fixed for
    native Windows GUI. (Bug #31165, fixed for Qt GUI in 3.51.23)
  * Numeric values (such as OPTIONS or PORT) were not read correctly
    from a connection string if they were not the last parameter. (Bug #33822)
  * The SSLCIPHER option was saved incorrectly on Windows. (Bug #33897)
  * The cursor position was incorrect after rows were deleted from a
    static cursor. (Bug #33388)
  * Dynamic cursors on statements with parameters were not supported.
    (Bug #11846)
  * FLAG_COLUMN_SIZE_S32 did not limit the octet length or display size
    reported for fields, causing problems with Microsoft Visual
    FoxPro. (Bug #30890)
  * Retrieving SQL_C_WCHAR data with SQLGetData() could crash due to
    incorrect handling of the buffer length. (Bug #32684)

  Includes changes from Connector/ODBC 3.51.23.

  Built using MySQL 5.0.52.

----

5.1.1 (12-Dec-2007)

  Functionality added or changed:
  * Added MSI installer for Windows 64-bit. (Bug #31510)
  * Implemented support for SQLCancel(). (Bug #15601)
  * Added wrappers for missing ODBC driver manager installer functions.
    This makes it possible to use the driver with unixODBC 2.2.11, which
    is the version shipped with Debian and Ubuntu. (Bug #32685)
  * Disallow 'SET NAMES' in initial statement and in executed statements.
  * Replaced the internal library which handles creation and loading
    of DSN information. The new library, which was originally a part of
    Connector/ODBC 5.0, supports Unicode option values.
  * Implemented native Windows setup library.
  * Removed monitor (myodbc3m) and dsn-editor (myodbc3c).
  * Replaced myodbc3i (now myodbc-installer) with Connector/ODBC 5.0
    version.
  * Added support for SQL_NUMERIC_STRUCT (Bug #3028, #24920).
  * Removed non-threadsafe configuration of the driver. The driver is
    now always built against the threadsafe version of libmysql.

  Bugs fixed:
  * SQL statements were limited to 64k. (Bug #30983)
  * Diagnostics were not correctly cleared on connection and
    environment handles.
  * SQLCopyDesc() did not correctly copy all records.
  * Freeing a statement resulted in a memory leak due to descriptor
    records not being freed. (Bug #31115)
  * SQL_ODBC_SQL_CONFORMANCE was not handled by SQLGetInfo().
  * NULL pointers passed to SQLGetInfo() could result in a crash.
  * Passwords with ';' were not handled correctly. (Bug #16178)
  * Binding of columns between calling prepare and execute caused premature
    statement execution. (Bug #29239)
  * ADO could not open a recordset that has a DECIMAL field (Bug #31720)
  * SQLError() incorrectly cleared the error information, making it
    unavailable from subsequent calls to SQLGetDiagRec().
  * ADO was unable to open record set using dynamic cursor. (Bug #32014)
  * SQLSetConnectAttr() did not clear previous errors, possibly confusing
    SQLError().
  * SQLDescribeColW returned UTF-8 column as SQL_VARCHAR instead of 
    SQL_WVARCHAR. (Bug #32161)
  * Fixed SQL_ATTR_PARAM_BIND_OFFSET, and fixed row offsets to work
    with updatable cursors.
  * SQLSetPos w/SQL_DELETE advances dynamic cursor incorrectly. (Bug #29765)
  * Recordset Update() fails in 5.1 ODBC connector when using adUseClient
    cursor. (Bug #26985)
  * MyODBC 5/ ADO Not possible to update a client side cursor. (Bug #27961)
  * Intermixing of SQLGetData() using SQL_C_CHAR and SQL_C_WCHAR on the same
    field value was incorrect. (Bug #28617)
  * SQLNativeSql() didn't properly handle the output length pointer.
    (Bug #10128 & Bug #31049)

  Includes changes from Connector/ODBC 3.51.21 and 3.51.22.

  Built using MySQL 5.0.52.

----

5.1.0 (8-Sep-2007)

  Functionality added or changed:
  * Added support for SQL_C_WCHAR.
  * Added support for Unicode functions (SQLConnectW, etc).
  * Added descriptor support (SQLGetDescField, SQLGetDescRec, etc).

----

3.51.27 (20-Nov-2008)
  Bugs fixed:
  * Cannot use SSL (Bug #29955)
  * Enable auto reconnect doesn't work (Bug #37179)
  * Add read and write timeouts on the connection (Bug #40407)

----

3.51.26 (7-Jul-2008)

  Bugs fixed:
  * Access Violation in myodbc3.dll (Bug #30770)
  * Truncation of "SHOW CREATE TABLE" result (Bug #24131)
  * Added a new connection option FLAG_NO_BINARY_RESULT. Fixed
    field type charset 63 problem. (Bug #29402)

----

3.51.25 (11-Apr-2008)

  Bugs fixed:
  * SQL_DESC_FIXED_PREC_SCALE was possibly being reported as true, but it's
    never supported. (Bug #35581)
  * ADO failed to retrieve the length of LONGBLOB columns. (Bug #12805)

----

3.51.24 (14-Mar-2008)

  Bugs fixed:
  * ConfigDSN() returned FALSE when the dialog was cancelled by the user.
  * Static cursor was unable to be used through ADO when dynamic cursors
    were enabled. (Bug #27351)
  * Driver would crash when requesting the current catalog before connecting.
    (Bug #16653)
  * Catalog data was truncated due to NAME_LEN only allocating a single byte
    for characters. (Bug #32864)
  * SSL connections could not be established properly. Added the server
    certificate verification flag. (Bug #29955)
  * Added deprecated SQLSetParam function. (Bug #29871)
  * Recordset-based update fails if blob field is queried. (Bug #19065)
  * Allows dirty reading with SQL_TXN_READ_COMMITTED isolation through ODBC
    (Bug #31959)
  * Don't cache results and SQLExtendedFetch work badly together.
    (Bug #32420)
  * SQLFetch or SQLFetchScroll returns negative data length using SQL_C_WCHAR.
    (Bug #31220)
  * An SQLSTATE of HY000 was returned when a stored procedure was not found,
    instead of 42000. This caused problems with ADO's adCmdUnknown option.
    (Bug #27158)
  * Identifiers were quoted incorrectly by SQLColumns(). (Bug #32989)
  * Worked around bug in iODBC installer library that made it impossible
    to create a system DSN, particularly on Mac OS X, where the installer
    created the /Library/ODBC/*.ini files with insufficient permissions.
    (Bug #31495)
  * Unresolved symbols "min" and "max" in libmyodbc3.so w/gcc 4.2. 
    (Bug #34256)
  * Fixed some incorrect information returned by SQLGetTypeInfo().
    (Bug #30918)
  * Values bound using the SQL_C_CHAR value type but with numeric
    parameter type were not correctly escaped. (Bug #34575)
  * The driver reported that it does not support SQLProcedureColumns(),
    which causes problems for ADO. (Bug #33298)

----

3.51.23 (9-Jan-2008)

  Bugs fixed:
  * Allowed connections to be enlisted in distributed transactions, even
    though the driver doesn't support them. (Bug #32727)
  * Cleaning up environment handles in multithread environments could result
    in a five (or more) second delay. (Bug #32366)
  * SQLAllocStmt() and SQLFreeStmt() did not synchronize access to the
    list of statements associated with a connection. (Bug #32857)
  * SQLGetInfo() returned the wrong value for SQL_DATABASE_NAME when no
    database was selected. (Bug #3780)
  * Changing the DSN name when editing a DSN left behind the DSN
    under the old name in addition to creating the new entry. (Bug #31165)

----

3.51.22 (13-Nov-2007)

  Functionality added or changed:
  * Removed workaround for bug #10491 in the server, which has now been
    fixed in MySQL Server 5.0.48 and 5.1.21.
  * Added FLAG_COLUMN_SIZE_S32 to limit the reported column size to a
    signed 32-bit integer. This option is automatically enabled for ADO
    applications, in order to work around a bug in ADO. (Bug #13776)

  Bugs fixed:
  * SQLGetInfo() reported that UNION was not supported. (Bug #32253)
  * The non-portable "English" locale was used for handling of decimal
    and floating-point values instead of "C". (Bug #32294)
  * Unsigned integer values greater than the maximum value of a signed
    integer were handled incorrectly. (Bug #32171)
  * The wrong result was returned by SQLGetData() when the data was an
    empty string and a zero-sized buffer was specified. (Bug #30958)

----

3.51.21 (5-Oct-2007)

  Bugs fixed:
  * The wrong value was returned for SQL_DESC_LITERAL_PREFIX and
    SQL_DESC_LITERAL_SUFFIX for date-time fields. (Bug #31009)
  * The wrong SQLSTATE was reported when the connection to the server
    was lost. (Bug #3456)
  * SQLDescribeCol() incorrectly reported whether auto-increment and
    some timestamp fields were nullable. (Bug #26108)
  * SQLGetTypeInfo() reported the wrong column size for the SQL_TYPE_TIME
    type. (Bug #30939)
  * Empty selection for database and character set comboboxes in setup
    were set to " " instead of an empty string. (Bug #30568)
  * Fixed incorrect input requirement in the setup dialog. (Bug #30499)
  * Added SQLSetParam function and fixed handling of buffer length in
    SQLBindParameter. (Bug #29871)
  * Fixed SQLSetPos that generated incorrect INSERT statement for result
    columns without bound data buffers. (Bug #31246)

----

3.51.20 (7-Sep-2007)

  Bugs fixed:
  * The FLAG_NO_PROMPT option was not handled by SQLDriverConnect().
    (Bug #30840)
  * Removed checkbox in setup dialog for FLAG_FIELD_LENGTH ("Don't
    Optimize Column Width"), which was removed from the driver in 3.51.18.
  * The wrong column size was returned for binary data. (Bug #30547)
  * The specified length of the username and authentication parameters to
    SQLConnect() were not being honored. (Bug #30774)
  * SQLGetData() will now always return SQL_NO_DATA_FOUND on second call
    when no data left, even if requested size is 0. (Bug#30520)
  * SQLSetParam() caused memory allocation errors due to driver manager's 
    mapping of deprecated functions (buffer length -1). (Bug#29871)
  * SQLGetConnectAttr() did not reflect the connection state correctly.
    (Bug#14639)

----

3.51.19 (8-Aug-2007)

  Functionality added or changed:
  * Because of Bug #10491 in the server, character string results were
    sometimes incorrectly identified as SQL_VARBINARY. Until this server
    bug is corrected, the driver will identify all variable-length
    strings as SQL_VARCHAR.

----

3.51.18 (6-Aug-2007)

  Functionality added or changed:
  * An experimental binary package, without an installer, is available
    for Microsoft Windows x64 Edition.
  * Binary packages as disk images with installers are now available
    for Mac OS X.
  * Binary packages for Sun Solaris are available as PKG packages.
  * Added FLAG_MULTI_STATEMENTS to allow issuing queries that contain
    multiple statements. Also added to the setup GUI. (Bug #7445)
  * Removed support for the TRACE and TRACEFILE DSN options. The standard
    ODBC logging should be used.
  * Added support for SQL_ATTR_ROW_BIND_OFFSET_PTR in normal cursors.
    (Bug #6741)
  * Added SSL options to the GUI setup dialog.

  Bugs fixed:
  * SQLColumns() incorrectly reported that an auto-incrementing
    field was not nullable. (Bug #14407)
  * SQLColumns() incorrectly reported that an auto-updating timestamp
    field was not nullable. (Bug #14414)
  * Lengths returned by SQLColumns(), SQLDescribeCol(), and SQLColAttribute()
    were often incorrect. These lengths should now conform to the ODBC
    specification. FLAG_FIELD_LENGTH no longer has any effect. The default
    behavior was incorrect. (Bug #27862)
  * The SQL_DATA_TYPE column in SQLColumns() results did not report the
    correct value for date and time types.
  * The SQL_DATETIME_SUB column in SQLColumns() was not correctly set for
    date and time types.
  * The value for SQL_DESC_FIXED_PREC_SCALE was not returned correctly
    for decimal values in MySQL 5.0 and later.
  * The wrong value from SQL_DESC_LITERAL_SUFFIX was returned for binary
    fields.
  * The wrong value for SQL_DESC_TYPE was returned for date and time types.
  * The wrong value for DECIMAL_DIGITS in SQLColumns() was reported for
    FLOAT and DOUBLE fields, as well as the wrong value for the scale
    parameter to SQLDescribeCol(), and the SQL_DESC_SCALE attribute
    from SQLColAttribute().
  * MySQL BIT(n) fields were always treated as SQL_BIT data. When n > 1,
    they are now treated as binary data.
  * If the connection character set was set to a multibyte character set,
    such as UTF-8, the wrong column size was reported. (Bug #19345)
  * SQLSpecialColumns() returned all TIMESTAMP fields when queried for
    SQL_ROWVER, not just an auto-updating TIMESTAMP field. (Bug #9927, still
    limited by Bug #30081 in the server.)
  * SQLConnect() and SQLDriverConnect() were rewritten to eliminate duplicate
    code and ensure all options were supported using both connection methods.
    SQLDriverConnect() now only requires the setup library to be present when
    the call requires it.
  * SQLColumns() failed when a catalog was specified due to an
    incorrectly-generated query. (Bug #29888)
  * SQLGetTypeInfo() returned incorrect information for date and time
    fields, and would not return results when queried for the SQL_DATETIME
    type. (Bug #28657)
  * myodbc3i did not honor the 's' and 'u' modifier to the -d option for
    installing the driver as a system or user driver. (Bug #29964)
  * Tables from the mysql database (catalog) were listed as SYSTEM TABLES
    by SQLTables() even when a different catalog was being queried. This
    also introduced errors due to the fix for Bug #26934.  (Bug #28662)

----

3.51.17 (13-Jul-2007)

  Functionality added or changed:
  * The setup library has been split into its own RPM package, to allow
    installing the driver itself with no GUI dependencies.
  * Added an option (CHARSET) for specifying the default character
    set for a connection. This must be used instead of a "SET NAMES"
    statement. Also available from the GUI setup dialog. (Related
    to Bug #6667 and Bug #9498.)
  * Dis-allow NULL ptr for null indicator when calling SQLGetData()
    if value is null. Now returns SQL_ERROR w/state 22002.
  * Fixed calling convention ptr and wrong free in myodbc3i, and fixed
    the null terminating (was only one, not two) when writing DSN to string.

  Bugs fixed:
  * myodbc3i did not correctly format driver info, which could cause the
    installation to fail. (Bug #29709)
  * Multiple result sets were not correctly flushed when a statement
    handle was closed. (Bug #16817)
  * SQLProcedures() did not handle NULL parameters, which could lead to 
    crashes (Bug #28316) 
  * SQLColumns() did not handle many of its parameters correctly, which
    could lead to incorrect results. The table name argument was not handled
    as a pattern value, and most arguments were not escaped correctly when
    they contained non-alphanumeric characters. (Bug #8860)
  * If there was more than one unique key on a table, the correct fields
    were not used in handling SQLSetPos(). (Bug #10563)
  * SQLColAttribute() returned the wrong value for SQL_DESC_BASE_COLUMN_NAME
    and SQL_DESC_BASE_TABLE_NAME for aliased fields. (Bug #6197)
  * Calling SQLGetDiagField with RecNumber 0,DiagIdentifier
    NOT 0 returns SQL_ERROR (Bug #16224)
  * Correctly return error if SQLBindCol is called with an invalid column
  * Fixed error handling of OOM and bad connections in catalog functions.
    This might raise errors in code paths that had not seen them in the past.
    Gathered the logic for internal result sets into one place. (Bug #26934)
  * Fixed bad use of memory related to setup/util/GUI. (Bug #27315)
  * Added a new DSN "OPTION" (FLAG_ZERO_DATE_TO_MIN) to retrieve XXXX-00-00
    dates as the minimum allowed ODBC date (XXXX-01-01). Added another
    option (FLAG_MIN_DATE_TO_ZERO) to mirror this but for bound parameters.
    FLAG_MIN_DATE_TO_ZERO only changes 0000-01-01 to 0000-00-00. (Bug #13766)
  * Fixed possible crash if SQLBindCol() was not called before SQLSetPos().
    Fixed use of MYSQL structure pertaining to updating large blobs in
    cursors. (Bug #10562)

----

3.51.16 (14-Jun-2007)

  Functionality added or changed:
  * Added support for using SSL. This is not yet exposed in the setup GUI,
    but must be enabled through configuration files or the DSN. (Bug #12918)

  Bugs fixed:
  * Statements that return multiple result sets (such as calls to stored
    procedures) would not free all results when closed. (Bug #27544)
  * SQL_C_TYPE_DATE, SQL_C_TYPE_TIME, and SQL_C_TYPE_TIMESTAMP were formatted
    without seperators, which could cause them to get interpreted incorrectly
    in some cases due to server bugs. (Bug #15773)
  * Calls to SQLNativeSql() could cause stack corruption due to an incorrect
    pointer cast. (Bug #28758)
  * SQLSetPos() could update or delete the wrong rows when the original result
    set did not contain all columns of a multi-part primary key. (Bug #28255)
  * SQLTables() did not distinguish tables from views. (Bug #23031)
  * The wrong function was used for freeing the artificial result sets that
    are created by some catalog functions. (Bug #22797)
  * Accessing the results of catalog functions could cause a crash when the
    "Don't cache results" option was set and a forward-only cursor was
    being used. (Bug #4657)
  * SQL_WVARCHAR and SQL_WLONGVARCHAR parameters were not properly quoted
    and escaped. (Bug #16235)
  * SQLForeignKeys() did not properly escape wildcard characters in its
    table name parameters when retrieving information. (Bug #27723)
  * Calls to SQLSetPos() could cause the driver to incorrectly calculate the
    length of some fields. (Bug #16917)

----

3.51.15 (04-May-2007)

  Bugs fixed:
  * SQLGetFunctions() reported that the driver supported SQLProcedureColumns(),
    even though it does not. (Bug #27591)
  * The row status array given to SQLExtendedFetch() was being stored
    as SQL_ATTR_ROW_STATUS_PTR, which could cause it to be used when it
    should not.
  * SQLSetPos() would not update a row unless all columns were bound,
    but it should only require that at least one column is bound and
    not set to be ignored.
  * SQLBulkOperations() and SQLSetPos() used the wrong indicator variable
    values when batch-inserting rows. (Bug #24306)
  * SQLGetConnectAttr() would report an incorrect isolation level if it
    was not explicitly set using SQLSetConnectAttr(). (Bug #27589)
  * The last argument of SQLColAttribute() and SQLColAttributes() was
    always being treated as a pointer to an SQLINTEGER even though it is
    sometimes a pointer to an SQLLEN.
  * SQLForeignKeys would return keys from the wrong tables due to improper
    handling of table names. (Bug #4518)
  * Changed the behavior of myodbc3i utility, so it loads the driver library
    prior to the setup library when creating a new DSN (Bug #27220)
  * SQLProcedures returned incomplete and incorrect information. (Bug #23033)
  * Statements that used "WHERE CURRENT OF" for positioned updates could
    not be re-executed or used with parameters that were provided using
    SQLPutData() and SQLParamData(). (Bug #5853)
  * SQLTransact() did not commit or rollback all transactions in the
    environment when no database connection was specified. (Bug #21588)
  * Updated use of FIELD_TYPE_* to MYSQL_TYPE_*, which has been preferred
    since the 3.23 days. (And FIELD_TYPE_* may finally disappear in 5.2.)

----

3.51.14 (08-Mar-2007)

  Functionality added or changed:
  * Added auto-reconnect option because automatic reconnect is now
    disabled by default in libmysql
  * Added auto is null option (Bug #10910)
  * Added support for SQLMoreResults
  * Checking SQL_ATTR_CONNECTION_DEAD now always calls mysql_ping() to
    check for a dead connection.
  * Remove ODBC escape syntax { and } that begin and terminate statements,
    allowing {CALL (?)} for procedures that don't require OUT or INOUT
    parameters
  * Improved regression tests
  * Added --with-separate-debug-driver ./configure option

  Bugs fixed:
  * SQL_ATTR_CONNECTION_TIMEOUT was inappropriately mapped to
    MYSQL_OPT_CONNECT_TIMEOUT. (Bug #19823)
  * Prepared statements using the embedded MySQL server would fail
    due to an uninitialized variable. (Bug #16535)
  * Fix positioned update and delete on statements derived from one
    table with no primary key but including all columns (Bug #22796)
  * Only initialize the ODBC version when the old-style SQLAllocEnv()
    is called. If SQLAllocHandle() is used, the ODBC version must be
    explicitly specified using a call to SQLSetEnvAttr()
  * On 64-bit systems, some types would be incorrectly returned. (Bug #26024) 
  * Using DataAdapter, Connector/ODBC may continually consume memory when
    reading the same records within a loop (Windows Server 2003 SP1/SP2 only).
    (Bug #20459)
  * Fix truncation of queries with leading spaces when SQL_ATTR_MAX_ROWS
    is set to a non-zero value (Bug #6609)
  * Fixed problem with memory allocation in Windows for BLOB and long
    queries that need re-allocation of net->buff
  * Using Connector/ODBC, with SQLBindCol and binding the length to the return
    value from SQL_LEN_DATA_AT_EXEC fails with a memory allocation error.
    (Bug #20547)
  * Fixed Windows-specific problems with the GUI for SQL_DRIVER_PROMPT
  * Fixed issues with numeric and decimal rounding
  * Fixed memory leak in SQLDriverConnect()
  * Fixed serious memory leak in SQLSpecialColumns() (up to 8KB/call)
  * Fixed handle leak in LibMain (Bug #21385, thanks to Leandro Becker)
  * Fixed field lengths reported by SQLDescribeCol() when using functions
    such as COMPRESS() in SELECT queries (Bug #20208)
  * Fixed 64-bit issues related to SQLINTEGER columns defined as int,
    but later cast to long.
  * TIME fields were incorrectly converted into date/time values. (Bug #25846,
    Bug #24867, and Bug #25432)
  * Fixed #Deleted issue in Microsoft Access by changing the default behavior
    of MyODBC driver regarding SQL_AUTO_IS_NULL variable. Added new option to
    the GUI and driver
  * Fixed memory leak in SQLSpecialColumns()
  * Corrected return size of SQLGetStmtAttr() when getting desc handles
  * Fixed SQLGetInfo() of SQL_TXN_CAPABLE to return SQL_TC_DDL_COMMIT
  * For SQL_C_TIME, handle conversion from the different time-related MySQL
    types, instead of always assuming it is just a TIME. (DATETIME, TIMESTAMP,
    and DATE were all handled incorrectly.)
  * Fix crash when default database is not set
  * Fix handling of lost connections (Bug #14639)
  * File DSNs could not be saved. (Bug #12019)
  * Nullability of auto_increment fields is incorrect. (Bug #10130)
  * Connector/ODBC may insert the wrong parameter values when using prepared
    statements under 64-bit Linux. (Bug #22446)
  * The SQLDriverConnect() ODBC method did not work with recent Connector/ODBC
    releases. (Bug #12393)
  * Some properties returned by SQLGetInfo() were set using the wrong data
    type, resulting in possible memory overruns. (Bug #20995)
  * Ending a transaction using SQLEndTran() on a environment handle was
    not supported. (Bug #21588)

----

3.51.13 (never officially released, changes listed with those for 3.51.14)

----

3.51.12 (25-Aug-2005)

  Functionality added or changed:
  * Improved README and other documentation
  * Improved source distribution for Microsoft Windows
  * Renamed package from 'MyODBC' to 'mysql-connector-odbc'
  * Improved configure script
  * Added -w option to myodbc3i to disable GUI popups
  * Redid help screen in myodbc3i
  * Added support for ODBCINI environment variable in SQLConnect()
  * Added CLIENT_MULTI_RESULTS client option
  * Added support for FIELD_TYPE_NEWDECIMAL
  * Moved to WiX-based installer for Windows
  * Made implied insert more intelligent (minimized the number of columns used)
  * Improved time/timestamp handling

  Bugs fixed:
  * Fixed problem with positioned update
  * Fixed SQLForeignKeys() to support more than 18 foreign keys
  * Fixed handling of quoting in SQLForeignKeys()
  * Fixed problem with SQLBulkOperations()
  * Fixed problems with SQL_C_BIT data type
  * Fixed problems with SQLGetTypeInfo() and date/time/timestamp
  * Fixed problems when SOCKET was something other than 'MySQL'

Binaries were made using MySQL 4.1.13 and unixODBC 2.2.11 (where applicable).

----

3.51.11-2 (11-Feb-2005)

  Bugs fixed:
  * Resources for last thread now freed
  * Rolled back a fix for Crystal Reports (force v3) because it 
    caused problems for Microsoft Access (wants v2)
  * Fixed binary RPM spec to no longer create sample DSN.
  * Fixed myodbcinst to exit with proper exit code.

----

3.51.11 (28-Jan-2005)

  Functionality added or changed:
  * Enhanced SQLGetTypeInfo(), mostly for blob types
  * Allow alternate keywords for DSN for read, silently converted upon write

  Bugs fixed:
  * Corrected SQLDriverConnect() to always prompt when SQL_DRIVER_PROMPT
    is specified
  * Fixed a number of problems with connecting using SQLDriverConnect
   
----

3.51.10a (15-Dec-2004)

  Functionality added or changed:
  * SQLDriverConnect() heavily reworked to support prompting
  * Port information now saved by GUI

  Bugs fixed:
  * Fixes for working with Crystal Reports

----

3.51.10 (25-Oct-2004)

  Functionality added or changed:
  * Qt-based setup library added
  * MyODBC now built against 4.1 client library

  Bugs fixed:
  * (Bug #3456)

----

3.51.07 (10-Oct-2003)

  Functionality added or changed:
  * MyODBC now built against 4.0 client library
  * ./configure now uses mysql_config to get library and include options
  * Compile as a thread-safe library by default
  * Disable SIGPIPE if not compiling threadsafe
  * Added test suite (run as user 'odbc' and no password)
  * Cleaned up code to conform to MySQL coding standards
  * Added bin-tar target to Makefile.am for building binary distribution
  * Added make_win_src_distribution script for building Windows source archive
  * Moved Windows-specific files into win32 directory

  Bugs fixed:
  * Fixed compiler warnings
  * Fixed crash when SQLSetPos() is called with SQL_ADD to insert a
    record with an empty value (pcbValue is SQL_COLUMN_IGNORE)
  * Fixed SQLFetch() to return and update SQL_ATTR_ROWS_FETCHED_PTR
    and SQL_ATTR_ROW_STATUS_PTR statement attribute pointers
  * Fixed SQLFetch() to properly handle SQL_ROWSET_SIZE
  * Fixed .NET crash when creating the MFC database project (Bug #913)
  * Added search pattern for all catalog APIs for all input parameters
  * Added support for SQLProcedures when connected to MySQL 5.0 server
  * Fixed SQL_ATTR_CURRENT_CATALOG to take a correct length pointer
  * Portability fixes

----

3.51.06 (27-Feb-2003)

  Bugs fixed:
  * Fixed handling long text field with 0 length data (for ADO)
  * Fixed syntax error due to error message overflow
  * Fixed problems when a dynamic cursor is  used for cursor-based
    updated and deletes and there ar eno key fields and the table
    schema is changed
  * Fixed to refresh the initialized SQLSTATE values in the driver
    when the ODBC version is changed and when multiple instances of
    the driver are loaded
  * Fixed a problem with bulk inserts are performed using SQLBulkOperations()
    or SQLSetPos() with SQL_ADD and the wrong pcbValue is given

----

3.51.05 Release Candidate (27-Feb-2003)

  Functionality added or changed:
  * Return the DRIVER name when no DSN is specified
  * Added support for new autoconf tools
  * Added scripts for producing binary distributions and source snapshots

  Bugs fixed:
  * Fixed core dumps when driver is built with debug options and
    the thread-safe client library is used
  * Return a valid list of catalog names in SQLTables() (for OpenOffice.org)
  * Fixed SQLTablePrivileges() and SQLColumnPrivileges() to return each
    privilege type in a distinct row
  * Fixed the time conversion format error from SQL_TIME_STRUCT (thanks
    to Ocke Janssen from Sun)
  * Fixed core dump on HP-UX in SQLSpecialColumns()
  * Fixed SQLGetTypeInfo to return individual rows for auto_increment
    status for all numeric types (requested by Gerry Sweeney)
  * Return an error when converting from SQL_C_NUMERIC. The driver is not able
    to handle SQL_NUMERIC_STRUCT conversion due to the lack of descriptors
    support.  (Requested by Michael Thomas of Microsoft's ODBC team)
  * Added missing ROWS_FETCH_PTR and PARAM_PROCESSED_PTR status updates to
    SQLFetch() and SQLExtendedFetch()
  * Fixed failure to set the default attributes for a new DSN when they were
    not set through the config APIs on Microsoft Windows
  * Cleaned up configure scripts to work on all UNIX platforms and gcc 3.x
  * Minor fixes for non-gcc compilers

----

3.51.04 (30-Sep-2002)

  Functionality added or changed:
  * Support for handling large tables without caching the entire result
    set. Now one can force the driver to use mysql_use_result() instead
    mysql_store_result(). Note that this can be used only with
    forward-only cursors.
  * Added options to ./configure to control whether to use the thread-safe
    client library
  * Cleaned up thread-safe code (debug calls)
  * Added checks for attempts to set pre-connection attributes (AUTOCOMMIT,
    TXN_ISOLATION) values after the connection instead of returning error
    when they are set before the connection
  * Added two new options, 'Force use of forward-only cursors' 
    and 'Don't cache results', to help large-scale applications
  * Made improvements to driver logging calls (myodbc.log and myodbc.sql)

  Bugs fixed:
  * Fixed SQLTables() to not return an data related to SYSTEM TABLES
  * Fixed core dumps on HP-UX and AIX
  * Portability changes for MySQL 4.0.3 and 4.1
  * Fixed SQLForeignKeys() when the CREATE TABLE had a COMMENT syntax
  * Fixed rs.update when server-side cursors are used
   
----

3.51.03 (29-May-2002)

  Functionality added or changed:
  * Added new DSN configuration dialog window
  * Added support for SQLForeignKeys() for InnoDB tables
  * Added support for new Query Log eoption, which allows the driver
    to log all SQL queries that it processes
  * Added code for one-time initialization when ODBC version is specified
    as SQL_OV_ODBC2 so that subsequent calls will not check ODBC version
  * Added MY_SQL_PRIMARY_KEY(1212) option to SQLColAttribute to make
    rs.resync work from ADO (info from Dan Perik)

  Bugs fixed:
  * Fixed multi-step generated errors when server-side cursor is used
    (Thanks to vrincon_dtt@hotmail.com and AdoAnywhere)
  * Fixed time conversion using SQL_C_TIME when hour has three digits
    (Reported by Michael Thomas)
  * Fixed ADO/DAO empty string issue (reported by Tom DeGerlia)
  * Fixed BLOB data reading from ADO/DAO (reported by Justin Goodwin)
  * Made SQLSetPos() return an error when float fields are used (info
    from Jim Dickenson)
  * Fixed errors generated during export of tables with VARCHAR/TEXT
    from Microsoft Access and Microsoft DTS to MySQL using MyODBC.
  * Fixed to handle SQL_C_BINARY properly (info from Spilka)
  * Updated SQLSTATE to return correct truncated data in warning
    cases (info from akbar ali)
  * Fixed type casting issues in SQLGetInfo to make OpenOffice.org
    work (reported by Ocke Janssen)
  * Fixed SQLFetch() when it is called after SQLFetchScroll() with
    SQL_FETCH_FIRST (reported by Simone Tregnago)
  * Mapped SQL_ATTR_CONNECTION_TIMEOUT option to mysql_options() with
    MYSQL_OPT_CONNECT_TIMEOUT
   
----

3.51.02 (05-Mar-2002)

  Functionality added or changed:
  * Added support for SQLTablePrivileges() and SQLColumnPrivileges()
   
  Bugs fixed:
  * Fixed SQLDriverConnect() to return  correct output string. This is
    the main fix for 'Reserved error (-7778)' from all Windows ODBC
    applications.
  * Fixed SQLError() to clear the error buffers on the first call when
    the ODBC version is SQL_OV_ODBC3, so subsequent calls will return
    SQL_NO_DATA.
  * Fixed SQL_UPDATE and SQL_ADD from SQLSetPos().
  * Fixed SQLSetPos() and SQLBulkOperations() to handle when the 
    application passes SQL_NTS as pcbValue
  * Fixed SQLColumns() to return the correct Nullability
  * Fixed SQL_ATTR_CONNECTION_DEAD. This should fix the issues from
    SQLExpress for XBase++ and .NET connection closed issues
  * Fixed SQLGetTypeInfo() to return correct values for SQL_DATE, 
    SQL_TYPE_DATE, SQL_TIME, SQL_TYPE_TIME, SQL_TIMESTAMP, and
    SQL_TYPE_TIMESTAMP.
  * Fixed tab ordering from DSN configuration dialog
  * Added default values for new DSN creation
  * Fixed export of tables from Microsoft Access 97 or Microsoft DTS
    when one of the field types are TEXT or VARCHAR

----

3.51.01 (30-Jan-2002)

  Functionality added or changed:
  * Added support for the following functions:
  - SQLAllocHandle()
  - SQLFreeHandle()
  - SQLSetEnvAttr()
  - SQLGetEnvAttr()
  - SQLSetConnectAttr
  - SQLGetConnectAttr
  - SQLSetStmtAttr
  - SQLGetStmtAttr
  - SQLFetchScroll
  - SQLBulkOperations with SQL_ADD (bulk inserts)
  - SQLGetDiagRec
  - SQLGetDiagField
  - SQLCloseCursor
  - SQLEndTran
  * SQLGetInfo() and SQLGetFunctions() were completely rewritten
  * Completely changed error handling, and driver returns SQLSTATE
    values based on the ODBC version
  * Enhanced cursor handling
  * Changed SQLGetTypeInfo() to return column headers as per ODBC 3.50
    specification
  * Changed all catalog functions to return column headers as per ODBC 3.50
    specification
  * Added support for dynamic cursor types
  * Added a feature called 'Test Data Source' in the DSN setup catalog so
    that DSN settings can be tested while configuring
  * Added 'Help' button to the DSN setup dialog
  * Added SOCKET option to the SQLConnect() interface
  * Added support for the deprecated SQLParamOptions() function so one
    can specify batch parameter processing with ODBC 2.x applications
  * Added server name and version to the statement error prefix
  * Added FILEDSN support
   
  Bugs fixed:
  * Fixed SQL_FETCH_RELATIVE from SQLExtendedFetch() or SQLFetchScroll() to
    handle the following cases:
    - BeforeStart AND FetchOffset <= 0
    - CurrRowsetStart = 1 AND FetchOffset < 0
    - CurrRowsetStart > 1 AND 
      CurrRowsetStart + FetchOffset < 1 AND
      |FetchOffset| > RowsetSize
    - CurrRowsetStart > 1 AND 
      CurrRowsetStart + FetchOffset < 1 AND
      |FetchOffset| <= RowsetSize         
   * Fixed SQL_FETCH_RELATIVE from SQLExtendedFetch() or SQLFetchScroll()
     to handle the case when:
     - FetchOffset  < 0 AND
       |FetchOffset| > LastResultRow AND
       |FetchOffset| > RowsetSize    
   * Fixed memory leaks when linked against iODBC or unixODBC

vim: ft=text