Download Release Notes for BTR2SQL v5.2

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
Release Notes for BTR2SQL v5.2
New Features Introduced in v5.2
The key new features in BTR2SQL v5.2 include full support for Microsoft SQL Server 2014,
LocalDB, MySQL 5.7, Oracle 12c, and PostgreSQL 9.4, as well as new and improved commandline migration tools and APIs.
MSSQL

MS SQL Server 2014 provides options for deploying database solutions both on-premise
and in the cloud with Windows Azure, new in-memory transaction processing
capabilities, and much more.

LocalDB is a simplified version of SQL Server that targets developers and single user
installations. LocalDB is easy to install and requires no management. LocalDB allows
developers to specify a database file location. Developers can then distribute a database
as standard files by detaching the database from LocalDB or Express server, copy the
database files to another computer, and attach them using that computer’s LocalDB
installation. To provide support for LocalDB, BTR2SQL v5.2 updated the BTR2SQL GUI
Select Database dialog box and added new commands to the SDK.
MYSQL

MySQL 5.7 has improved its capabilities for working with 64-core servers, which in turn
enables faster performance and increases the number of database connect and
disconnect actions allowable within a specific time period. These are useful for large
web applications.

DATETIME and TIMESTAMP fields are no longer stored as fixed length strings. These
data types are now stored as their associated SQL type, by combining time of day with
fractional seconds. The GUI Migration Utility supports DATETIME and TIMESTAMP types
in the Data Types Mapping and Convert File screens.
Note: Requires MySQL client library version 5.6.4 or above be installed.

8-byte integer fields map to the BigInt SQL type by default (instead of Binary). This is
faster and displays better in SQL tables. If the Integer(8) field is a descending index and
all 64 bits are required, the SQL type should be changed from BigInt to Binary.

A sample mds_app_lock.ini file can be found in the installation folder: <Program
Files>\Mertech Data Systems\DB Drivers\Btrieve\deploy\mysql.
-1-
ORACLE

Oracle 12c has a multi-tenant architecture that simplifies the process of consolidating
databases onto the cloud; enabling customers to manage many databases as one,
without changing their applications.

The extremely small namespace Oracle allowed in the DBMS_LOCK package (30 bits) can
lead to a lock conflict. A custom lock package is provided, expanding the namespace;
this should eliminate false lock errors.
POSTGRESQL

PostgreSQL 9.4 includes many improvements, such as better JSON functionality and
writable external data.
GUI MIGRATION UTILITY

Attach and detach options were added to the BTR2SQL GUI Select Database dialog box
to allow users to specify the database file location in MSSQL.

The migration tool now displays an error message when you login if the installed
libmysql version does not match the version expected by the MySQL driver.
COMMAND-LINE MIGRATION TOOLS

A new command-line tool, MdsMigrateFile, is installed. MdsMigrateFile can be used to
migrate Btrieve files when DDFs are not available.

Several improvements have been made to the MigrateUniPassData command-line tool,
which performs migrations for Magic applications:
a) An error message is displayed if the magic.ini file cannot be located.
b) "Size" is retrieved from the physical section if it is not found in the XML for a field.
c) "Location" is supported in the database definition.
d) CLOB fields (XML type 33) are supported.
e) The "owner name" can now be provided for a Btrieve file that requires it.
f) A sample MigrateUniPaasData.ini file can be found in the installation folder:
<Program Files>\Mertech Data Systems\DB Drivers\Btrieve\bin.

All command-line tools now contain a version date.
-2-
APIS

New APIs, MdsSetSetting and MdsGetSetting, are available to programmatically set and
retrieve global (mds_global.ini) and folder specific (mds.ini) settings.

The Btrieve APIs B_RENAME_FILE and B_DELETE_FILE are supported. B_RENAME_FILE
renames the local INT file. B_DELETE_FILE drops the server table and deletes the local
INT file.

Support added for NextInChunk and AppendToChunk sub functions of the
B_GET_DIRECT and B_CHUNK_UPDATE functions.

When B_UPDATE or B_DELETE are called, a Status 80 is returned if any of the fields has
changed since the last read.
GENERAL

A new setting in mds_global.ini, PERVASIVE_DLL_NAME, allows you to specify the name
and optionally the path of the Btrieve access dll to be used for reading Btrieve data
during migration (defaults to wbtrv32.dll).

The default for the IDENTIFIER_CASE setting was changed from "Upper" to "Original".
(MSSQL and Oracle)

Shortcuts were added for easy access to the deployment folder (where the Btrieve
replacement dlls are located) and to the SDK.
DOCUMENTATION

New blog posts and white papers are available to describe multi-migration scenarios.

User guide updated to clarify how AutoInc fields are handled.

Additional indexes were added to the User Guide.

Examples to show how to use Embedded SQL to create and drop databases and users
are provided in sdk\Samples\MdsApis\C\MdsApiSamples.cpp.
-3-
Issues Fixed in v5.2
The following issues are resolved in the BTR2SQL v5.2 release.
MSSQL

Improved float and date/time conversion algorithms were implemented.

An issue that occurs when duplicate table names exist across multiple databases is
resolved.
MYSQL

User guide updated to include a note that the correct 32-bit or 64-bit version of
libmysql.dll must be available on the system PATH.

8-byte binary values now work properly.

A high value timestamp (for example, 9999-12-31 23:59:59.999000) is now handled
correctly for all time zones.

A duplicate table error no longer occurs if you migrate a table that does not have an
underscore in the name (for example, abcd) and subsequently migrate a table with the
same name but containing an underscore (for example, ab_cd).

A BINARY(500) field is mapped to a VARBINARY(), or equivalent BLOB field.
ORACLE

Max cursors exceeded handled properly.

Binary columns larger than 255 and smaller than 2000 are migrated as Raw instead of
BLOB.

User now prompted for the SYS password to create the mds_session_info view if it does
not already exist, eliminating the error message to grant select rights on V$SESSION.

The problem of some tables being created under the SYS user has been fixed.

The issue causing error "ORA-01460: unimplemented or unreasonable conversion
requested" has been fixed.
POSTGRESQL

Btrieve supports AutoInc keys where the values are automatically assigned when a new
record is inserted. The application can also choose to assign its own value. This feature is
properly supported when manual values are entered.

AutoInc columns are correctly renamed when a table is renamed using
MdsRenameTable.
-4-

Login to a non-existent database now returns B_ERR_LOGIN_FAILED_BAD_DATABASE
instead of B_ERR_INVALID_USERNAME.

MDS_RECNUM updated with the highest assigned sequence number after the migration
process completes to avoid duplicated records on this column.
GUI MIGRATION UTILITY

Browsing SQL data after conversion works properly in MySQL and PostgreSQL.

No error occurs if the user attempts to convert a database a second time.

Drop-down database list now fully populated in the PostgreSQL Login dialog box.
GENERAL

B_CREATE now supports True-Null indexes.

Expired license handled properly.

There is proper support for B_CHUNK_OFFSET_TOO_LONG, Return Code103. (MySQL,
Oracle and PostgreSQL)

BTR2SQL properly installs on Windows XP.

Migration using OemToAnsi works properly when a European location is selected in
regional settings.

Warning of pending license expiration will only be displayed once per day and only
when the expiration date is thirty days or less.

An exception error that occurred after a B_SET_DIR is fixed.

An exception error that occurred during B_BUILD_INDEX is fixed.

Magic Int Date and Number type issues are fixed.

B_CREATE now handles indexes with overlapping fields.

Performance issues with GetNext and GetNextExt are fixed.
DOCUMENTATION

SERVER_SIDE_LOCKING spelling error fixed in online Help.

Missing information describing the use of Filegroups has been added to the User Guide.

HTML-based developer documentation updated.
-5-