DataFlex SQL Connectivity Kits from Data Access Worldwide Version: 6.3.0.15 Release Date: October 30, 2019 File: SQL Connectivity Kits v.6.3.0.15.zip Introduction =============== Connectivity Kits provide DataFlex Studio, Windows and Web Clients and WebApp Server with database drivers for Microsoft SQL Server, IBM DB2 and via ODBC MySQL and other database servers and data sources. Use of Connectivity Kits is governed by the license agreement included with the Software Product with which the Connectivity Kits are installed. For licensing information, please contact Data Access Worldwide at sales@DataAccess.com or your Data Access Worldwide regional office or Channel Partner. This ZIP file updates to the version shown above development environments that already have a previous version of the Connectivity Kits installed. It will also install drivers where no Connectivity Kit has been previously installed. Do you need this driver version? ================================== DataFlex installs SQL Connectivity Kits as part of its installation, so you may already have the version of the drivers you need. Please, check the list below to see if you need to update your drivers: DataFlex 2019 - 19.1 (October 2019 release) SQL Connectivity Kits version 6.3.0.15 DataFlex 2019 - 19.1 (April 2019 release) SQL Connectivity Kits version 6.3.0.13 DataFlex 2017 - 19.0 (December 2017 release) SQL Connectivity Kits version 6.2.0.42 DataFlex 2017 - 19.0 (August 2017 release) SQL Connectivity Kits version 6.2.0.40 DataFlex 2016 - 18.2 SQL Connectivity Kits version 6.1.0.27 DataFlex 2015 - 18.1 SQL Connectivity Kits version 6.1.0.18 Because they include bug fixes and new features, as a general rule, we always recommend using the latest build of the drivers. But you know your application and the details "under the hood" so you are the best person to determine when to perform the upgrade. Upgrading Client Environments ================================ The first thing to do is to consider if the current update is needed and then determine the right moment to install it. If you determine that you are going to upgrade the drivers, you would always first upgrade them in the development environment for the DataFlex revision being used and fully test the application(s) you run in that host revision. Once your applications have been thoroughly tested, deploy the applications with the new version of the driver and plan the upgrade of existing sites. Keep in mind that this update is to be installed in development environments - this ZIP file includes files that are not needed in a client environment. In order to upgrade client sites, you will need to create your own installation and procedure following instructions outlined in the deployment book of the respective DataFlex Help System. Recent Changes and Fixes (since Build 6.2.0.42) ================================================== The family of SQL Connectivity Kits (including Microsoft SQL Server, IBM DB2 and ODBC) are published as a set. The changes and fixes listed in this document comprise a summary of changes made to that set. Some changes are specific to particular CKs and others are generic to the set. Build 6.3.0.15 Conversion of system table would fail if the source table was SQL driver based. Build 6.3.0.14 SQLSetParameter would add a trailing space to the passed parameter. Odbc_drv: MySQL: Creation or conversion of Numeric(14.8) columns would fail with Syntax error. MySQL: Creation or conversion of DF_ASCII with length > 255 would fail. Such columns will now be converted to DF_TEXT, since MySQL char and varchar are limited to length 255. Build 6.3.0.13 Odbc_drv: MySQL: Refresh table in DataFlex Studio would fail with “Could not open and analyze SQL table or its INT file” error. Caused by schema name being set to login user name. MariaDB: Refresh table would sometimes write incorrect primary index to INT file. Build 6.3.0.12 Odbc_drv: Prior DataFlex ODBC drivers had several issues that caused some functionality not to work when used with MySQL and MariaDB. Several changes have been made in this update to make the DataFlex ODBC driver work properly with these databases. Build 6.3.0.11 Passing a variable length parameter (e.g varchar(max) ) for a stored procedure with SQLSetParameter could in some circumstances cause an exception. When receiving result messages from a stored procedure or SQL script with SQLGetMessage, messages would be limited to 512 characters. The maximum length for result messages has been increased to 1024. Build 6.3.0.10 Embedded SQL. Changed SQL.pkg. Added support to change the cursor type for an embedded SQL statement. Build 6.3.0.9 Additional changes for parameterized queries. Changed sql.pkg MSSQLDRV: Mssqldrv.int: Changed comments to reflect type mappings for SQL Server 2012 also apply for SQL Server 2014, SQL Server 2016 and SQL Server 2017. Build 6.3.0.8 Added support for parameterized queries in embedded SQL. New sql.pkg with new functions: SQLSetParameter SQLSetNextParameter. Further details and examples see Embedded SQL Parameterized queries Build 6.3.0.7 DB2_DRV: On a DB2 standard table with an identity column: Would generate "Wrong number of parameters." error when a value was provided for the identity column. After restructure of DB2 standard table with an identity column, the identity value would not properly be restarted. https://support.dataaccess.com/Forums/showthread.php?62709-DF-19-0-DB2-CK-Error-quot-CLI0100E-Wrong-number-of-parameters-quot-when-saving-creating-from-dbExplorer Build 6.3.0.6 Moved Function DriverIndex from mssqldrv.pkg (Class cMSSQLHandler) to cli.pkg (Class cCLIHandler) Changed cli.pkg. (reverted back to array class) Changed DF_FILE_DATABASE_ID to make consistent with DF_DATABASE_ID. MSSQLDRV: Added Function SqlServerClientDriverName that returns the driver name. The driver name can be used to compose a connect string. Changed mssqldrv.pkg Build 6.3.0.5 Embedded SQL: Changed driver internal handling of connection and statement handles. Odbc_drv: Removed obsolete ODBC commands from odbc_drv.pkg. Build 6.3.0.4 Cleanup of driver related pkgs: Sql.pkg (changed single line if’s to multiline) Changed driver internal handling of DF_DATABASE_ID attribute. Added compiler warning DFERR_COMP_WARNING_OBSOLETE_CMD for obsolete commands: CLI_SetConstraint; MSSQL_SetConstraint; DB2_SetConstrained; CLI_Get_Driver_Attribute; CLI_Set_Driver_Attribute; CLI_Get_Database_Attribute MSSQLDRV: Added support for “ODBC driver 17 for SQL Server”. (SQL Server 2017 client) Changed Mssqldrv.pkg DB2_DRV: For the DB2 TIMESTAMP type (DataFlex DATETIME type) the number of decimals (milliseconds, nanoseconds) can now be specified. DB2 allows TIMESTAMP(0) thru TIMESTAMP(12). Default is 0 decimals. In the DataFlex Studio this can be specified as length 23.0 thru 23.12. Note that more than 3 decimals may be truncated by the DataFlex runtime. It is recommended to use a maximum of 3 decimals for DATETIME type. Earlier versions of DataFlex DB2 driver would create DATETIME columns as TIMESTAMP(6). Changed DB2_DRV_DriverDef.xml file. Build 6.3.0.3 Cleanup of driver related pkgs: cli.pkg; mssqldrv.pkg; db2_drv.pkg; odbc_drv.pkg; sql.pkg Addressed issue reported at https://support.dataaccess.com/Forums/showthread.php?62350-SQLColAttribute-returns-wrong-DFTYPE-for-DateTime Fill_Field DF_LOW/DF_HIGH of a time column, filled with incorrect time values. This caused "Time contains an invalid value." errors. Also during constrained finds on indexes with time column. https://support.dataaccess.com/Forums/showthread.php?62327-Error-4525-Time-contains-an-invalid-value After changing Index Type from Server to Client_Only AND clearing the Index Name, the table could not be opened anymore because of invalid INT file. Exclusive open of a table with no index.1 would cause 'Index number out of range' error. ODBC_DRV: Creating indexes and primary keys on PostgreSQL failed when using other than default schema 'public'. Structure_End would lowercase schema names on PostgreSQL Build 6.3.0.2 Removed DF_File_Record_Identity attribute from Studio driver configuration files. Fix to make Studio driver configuration files work with DataFlex Studio before 19.0. Changed files: MSSQLDRV_DriverDef.xml; DB2_DRV_DriverDef.xml; ODBC_DRV_Driverdef.xml. Build 6.3.0.1 Delete_Index of a non-temporary index outside structure_start/structure_end caused access violation. (BT 7318) Recnum tables with RECNUM column bigint could not be restructured. Fixed. For full details and a complete list of changes since build 4.0.0.35, please refer to SQL Connectivity Changes and Fixes.pdf available in the ZIP file in the Documentation folder. Supported Environments ======================= DataFlex 18.x and higher • Microsoft SQL Server 2017 (including LocalDB) using ODBC Driver 17 for SQL Server (or higher) • Microsoft SQL Server 2016 (including LocalDB) using ODBC Driver 13.1 for SQL Server (or higher) • Microsoft SQL Server 2014 (including LocalDB) using ODBC Driver 11 or 13 for SQL Server (or higher) • Microsoft SQL Server 2012 (SP4 including LocalDB) using SQL Server 2012 Native Client (v.11.0 or higher) NOTE: While older ODBC drivers can be used with newer versions of SQL Server, only the latest ODBC driver for your SQL Server version will provide support for your SQL Server’s new features. DB2 10.1 and higher MySQL 8.0.17 (or later) and compatibles using MySQL Connector/ODBC 8.0.17 (or later) MDAC 2.8 Windows 7 and higher ZIP File Contents =================== The ZIP file includes five folders containing the following files: 1. Bin Access.int CKDaemon.exe DB1398.dfr DB2rtx.dll DB2_Drv.cfg db2_drv.dll db2_drv.int DB2_DRV_DriverDef.xml MariaDB.int MS1383.dfr MSSQLDrv.cfg mssqldrv.dll mssqldrv.int MSSQLDRV_DriverDef.xml MSSQLrtx.dll MySQL.int OD1476.dfr ODBCrtx.dll ODBC_Drv.cfg odbc_drv.dll odbc_drv.int ODBC_Drv_Database.int ODBC_DRV_DriverDef.xml Oracle.int Pervasive.SQL.int PostgreSQL.int Register.exe Register.exe.manifest SQLBase.int winsetup.dll 2. Documentation SQL Connectivity Recent Changes and Fixes.pdf Whats New in SQL Connectivity Version 6.pdf 3. Help DevelopmentGuide.chm (Connectivity book located under Developing Database Applications | Data Connectivity) Tools.chm (Product Registration book located under Development Tools) 4. Pkg CKCompatibility.pkg cli.pkg cTableColumnFetchHelper.pkg db2_drv.pkg MSSqldrv.pkg odbc_drv.pkg sql.pkg sqlOld.pkg 5. Usr (English) DFErr003.dat DFErr003.hdr DFErr003.tag Installing SQL Connectivity Kits ================================== Before installing this version of the Connectivity Kit in your production environment, make sure you: + review the documentation installed both in the Documentation and Help folder (see items 2 and 3 under ZIP File Contents) to learn about the changes that this version will bring to your environment + install it in a test environment first to verify the effects this new version has on your existing applications Once ready, install the new build by following the steps listed below: 1. Stop WebApp Server service, and exit any DataFlex tools or applications so files that need to be replaced are not in use. 2. Backup your current DataFlex environment making sure to include the five folders listed above that will be receiving the new files 3. Download the ZIP to a local folder 4. Extract the contents of the ZIP file to the DataFlex root folder where you would like to update/use the Connectivity Kits version 6.3.0.15. For example, if you would like to install this update to be used in a DataFlex 18.2 Studio environment, choose to extract SQL Connectivity Kits v.6.3.0.15.zip to the root folder of 18.2 (default location: C:\Program Files\DataFlex 18.2) - the files will be extracted to the same destination subfolders as listed in the zip. If asked, choose to overwrite and replace files in the destination folders. Important! If you are using the Windows built-in ability to deal with compressed files and have installed DataFlex into the default location (i.e. under Program Files), when extracting the contents of the ZIP file you may be prompted to use elevated rights in case you are not logged in as Administrator. However, if you are using a third-party tool (like WinZip), you may NOT be prompted to use elevated rights and the extraction may silently just not work. Please, follow the third-party tool manufacturer’s instructions on how to extract files when elevated rights is needed. Support ========= Data Access Worldwide offers no specific support for this installation process. Support for Connectivity Kits will be included with your DataFlex license and will follow current support policies outlined on the company's website at http://www.dataaccess.com/resources/customer-support-1196. If you have any questions, email support@DataAccess.com. Copyright 2019, Data Access Corporation.