Release notes for MBS Xojo SQL Plugin

MBS Xojo Plugins 19.5 - 12th November 2019

  • Added ExecuteSQL and SelectSQL methods for SQL Plugin to support API 2.0.
  • Added AsRowSet method to SQLCommandMBS class.
  • Added CubeSQLReceiveData, CubeSQLSendData, CubeSQLSendEndData to SQLConnectionMBS and SQLDatabaseMBS classes.
  • Added DB2SQLExecDirect and DB2SQLRowCount methods to SQLCommandMBS class.
  • Added kDataTypeInt64 and kDataTypeUInt64 constants to SQLValueReadMBS class.
  • Added kTypeInt64 and kTypeUInt64 constants to SQLPreparedStatementMBS class.
  • Added MySQLInsertID to SQLConnectionMBS and SQLDatabaseMBS classes.
  • Added SQLiteBackupFinish, SQLiteBackupInit, SQLiteBackupPageCount, SQLiteBackupRemaining, SQLiteBackupStep, SQLiteEnableLoadExtension, SQLiteLastInsertRowID, SQLiteLoadExtension file, SQLiteLoadExtension path, SQLiteMemoryHighwater, SQLiteMemoryUsed, SQLiteReKey, SQLiteSetBusyHandler, SQLiteSetBusyTimeout, SQLiteSetKey, SQLiteTableColumnMetaData and SQLiteThreadsafe methods to SQLConnectionMBS and SQLDatabaseMBS classes.
  • Changed BackupInit in SQLite3MBS and SQLiteBackupInit in SQLConnectionMBS and SQLDatabaseMBS classes to take variant and accept both database and connection object for dest and source.
  • Changed MemoryHighwater and MemoryUsed in SQLite3MBS class to be regular properties.
  • Changed SQL connection to CubeSQL to default to scrollable recordsets.
  • Fixed a crash with empty RecordSet from CubeSQL crashing in debugger.
  • Fixed bug for date handling in SQLPreparedStatementMBS class.
  • Fixed bug in SQLDatabaseMBS, SQLParamMBS or SQLFieldMBS where Options may have returned nil.
  • Fixed problem with SQL Plugin not using internal SQLite library (broken in pr1).
  • Removed Connection parameters for SQLAPIMBS methods. Not needed anymore for MySQLMBS, DB2MBS, PostgreSQLAPIMBS and SQLite3MBS.
  • Removed LibraryLoaded properties from DB2MBS, InformixMBS, MySQLMBS, PostgreSQLAPIMBS and SQLite3MBS classes.
  • Rewrote handling for internal SQLite, PostgreSQL and CubeSQL libraries.
  • Updated SQLAPI to version 5.0.1.
  • Updated SQLite to version 3.30.0.
  • Updated SQLPreparedStatementMBS for changes in Xojo 2019r2.1.
  • Updated plugin SDK to version from Xojo 2019r2.

MBS Xojo Plugins 19.4 - 17th September 2019

  • Added SelectSQL method to SQLPreparedStatementMBS class.
  • Added SSL connection modes for CubeSQL client in MBS Xojo SQL Plugin.
  • Changed SelectSQL method in SQLPreparedStatementMBS to return type RowSet and made it private.
  • Changed SQL Plugin functions for ODBC on Mac to not complain about missing SQLBrowseConnect.
  • Fixed a problem with ActualTech ODBC drivers to connect from Mac to Microsoft SQL server.
  • Fixed possible crash situation with SQL Plugin pinging server in background.
  • Renamed BindedValues and BindedTypes properties in SQLPreparedStatements to BoundValues and BoundTypes.
  • Updated CubeSQL client to version 5.8.3.
  • Improvements for Xojo 2019r2.

MBS Xojo Plugins 19.3 - 24th July 2019

  • Added BindedValues and BindedTypes property for SQLPreparedStatements to inspect bindings.
  • Added SQLDatabaseMBS.kOptionLibraryCubeSQL and SQLConnectionMBS.kOptionLibraryCubeSQL constants.
  • Updated SQLite to version 3.29.0.

MBS Xojo Plugins 19.2 - 21st May 2019

  • Added asInt32, asInteger, asInt64, asUInt32 to SQLValueReadMBS class.
  • Added nil object check for SQLCommandMBS.ExecuteMT and similar functions.
  • Added setAsInt32, setAsInt64, setAsInteger, setAsUInt32 to SQLValueMBS class.
  • Added SQLiteInMemory constant to SQLDatabaseMBS and SQLConnectionMBS classes.
  • Changed ChartDirector and SQL Plugin to accept licenses for up to 5 years in future instead of 3 years.
  • Changed SQL Plugin to not complain about missing functions with freetds.
  • Changed SQL Plugin to ping server regularly and check alive status.
  • Changed SQLCommandMBS class to clear SQLFieldMBS and SQLParamMBS objects from it in destructor. If you access them later, you'll get SQLNotInitializedExceptionMBS exception.
  • Changed SQLConnectionMBS/SQLDatabaseMBS to pass more options to SQLCommandMBS for MS SQL: SQL_ATTR_CURSOR_TYPE, SQL_ATTR_QUERY_TIMEOUT, SQL_ATTR_CONCURRENCY, SQL_ATTR_CURSOR_SCROLLABLE and SQL_ATTR_CURSOR_SENSITIVITY.
  • Changed SQLDatabaseMBS.Client and SQLConnectionMBS.Client to raise exception if client is out of range.
  • Deprecated the Shell function on InternalSQLiteLibraryMBS class.
  • Fixed an issue with AutoCache in SQL Plugin preventing MovePrev method to work correctly.
  • Fixed bug with exception handling for SQLCommandMBS.ExecuteMT method.
  • Fixed SQLSelect and SQLSelectMT methods in SQLConnectionMBS class to avoid hex encoding for BLOBs.
  • Rewrote Caching for SQL Plugin to use much less memory.
  • Updated SQLite to version 3.28.0.
  • Upgraded CubeSQL SDK to version 5.7.3.
  • Fixed problem with cached recordsets and BLOB values converted to hex unintended.
  • Improved performance for plugin functions accessing Xojo dictionaries.
  • Updated to Xcode 10.2.

MBS Xojo Plugins 19.1 - 12th March 2019

  • Added SQLErrorExceptionMBS.SQL property.
  • Fixed crash with connecting to SQL Anywhere when creating connection failed. Now reports an error instead.
  • Updated SQLAPI to version 4.2.5.
  • Updated SQLite to version 3.27.1.

MBS Xojo Plugins 19.0 - 22nd January 2019

  • Added more for internal SQLite3 library load for SQLAPI.
  • Added option to SQLPreparedStatementMBS class and other variant functions to accept folderitem to stream from file to blob field.
  • Changed a few SQL functions to copy options from connection to command, which before not all functions did.
  • Changed default SQL options for connecting to FileMaker via ODBC so it works out of the box.
  • Enabled SQLITE_ENABLE_API_ARMOR for SQLite to help reduce crashes with wrong API calls to SQLite.
  • Fixed a bug in Oracle initialization for Linux for SQL Plugin.
  • Fixed a problem with MySQL DLL loading.
  • Fixed bug with binding empty values on encrypted CubeSQL connection.
  • Fixed crash in SQL Plugin when using unnamed fields in SQLite recordsets.
  • Fixed problem with text data type handling for variants in plugin functions, e.g. for SQLDatabaseMBS.UpdateRecord method.
  • Fixed problem with text encoding with Oracle databases for SQL Plugin.
  • Updated SQLAPI to version 4.2.4.
  • Updated SQLite version 3.26.0.
  • Added links to blog articles from help.
  • Changed Linux compile to include function names for stack traces.
  • The MBS Plugin for Real Studio will be build on demand only.

MBS Xojo Plugins 18.5 - 27th November 2018

  • Changed SQLDatabaseMBS to return RecordSet where you can query names of columns even if you have no rows.
  • Fixed bug with SQLAPI on finding the MySQL libraries.
  • Updated SQL Database plugin for changes in Xojo 2018r3.
  • Updated SQLAPI library to version 4.2.4 beta 2.
  • Updated SQLite to version 3.25.2.
  • Rebuild with Xcode 10. Minimum MacOS version is now 10.9.
  • Updated to Xcode 10.1.

MBS Xojo Plugins 18.4 - 25th September 2018

MBS Xojo Plugins 18.3 - 17th July 2018

  • Added InternalCubeSQLLibraryMBS module to use built in cubesql client library.
  • Added InsertRecord and UpdateRecord methods to SQLDatabaseMBS class.
  • Added MemoryUsed, MemoryHighwater, Keywords and isKeyword to InternalSQLiteLibraryMBS module.
  • Added UpdateRecord method to SQLConnectionMBS class.
  • Changed SA_ODBC_SQL_WCHART_CONVERT setting for building SQLAPI on Linux, so we can connect to Microsoft SQL Server here.
  • Fixed a problem with ODBC crashing on Linux with using freetds to connect to Microsoft SQL Server.
  • Fixed auto commit issue for CubeSQL.
  • Fixed bug where SQL Plugin would return date with year 1899 instead of nil for empty SQLDateTime value.
  • Improved InternalSQLiteLibraryMBS.Shell function to reset global settings for further calls.
  • Improved SQLDatabaseMBS.InsertRecord to better handle float and integer number types.
  • Improved SQLPreparedStatementMBS.SQLSelect to not return invalid RecordSet when SQL is invalid.
  • Updated SQLAPI to version 4.3.3 beta with fixed for CubeSQL.
  • Updated SQLite to version 3.24.0.
  • Updated plugin SDK for 2018r2.
  • Added database class for documentation.

MBS Xojo Plugins 18.2 - 22nd May 2018

  • Changed AutoCache for SQL Plugin to not try to cache recordsets if there is no result set.
  • Changed cursor functions for SQL Plugin to return field count = 0 if there is no result set.
  • Fixed problem with SQLConnectionMBS.Options property crashing.
  • Updated SQLite to version 3.23.1
  • Updated to SQLAPI 4.2.2.
  • Updated to Xojo 2018r1 plugin SDK.

MBS Xojo Plugins 18.1 - 6th March 2018

  • Added Options property to SQLDatabaseMBS, SQLConnectionMBS and SQLCommandMBS to inspect options.
  • Added support for SQL Anywhere API v1 in addition to v2.
  • Changed SQLPreparedStatementMBS to accept binding with Xojo.Core.Date objects.
  • Fixed exceptions for SQL Plugin on ARM.
  • Fixed problems with connecting to SQL Anywhere database.
  • Fixed problems with using SQLDatabaseMBS object after calling close method on it. Now you can reuse it for another connection.
  • Fixed SQLDatabaseMBS and SQLConnectionMBS to close an existing connections before starting a new one.
  • Updated SQLite to version 3.22.0

MBS Xojo Plugins 18.0 - 23rd January 2018

  • Added kSQLAnywhereClient and kCubeSQLClient constants to SQLConnectionMBS class.
  • Fixed SQLConnectionMBS.ConnectMT to set SQLite encryption key.
  • Removed warning if using empty sqlite encryption key.
  • Updated SQLAPI to version 4.2.1.
  • Fixed an issue with exception handling on 64-bit Linux introduced in 17.3.

MBS Xojo Plugins 17.5 - 28th November 2017

  • Added SQLConnectionMBS.InsertRecord function.
  • Fixed bug with SQLite Prepare command with extra spaces in SQL commands.
  • Fixed issue in SQL plugin with binding parameters for ODBC.
  • Fixed issue in SQL plugin with getting text fields with FileMaker over ODBC.
  • Updated SQLite to version 3.20.1.

MBS Xojo Plugins 17.4 - 26th September 2017

  • Added MemoryUsed and MemoryHighwater properties to SQLite3MBS class.
  • Added SQL_ATTR_CURSOR_TYPE as one of the options we pass from SQL connections down to all command objects.
  • Removed SQLAnywhere plugin part as that functionality is now available in SQL Plugin.
  • Updated SQLAPI to version 4.1.12.
  • Updated SQLite to version 3.20.0.
  • Changed Linux plugins to include build number in SONAME field so OS can distinguish different versions better.
  • Updated all GTK code to dynamically load GTK+ 3 for Xojo 2017r2 and GTK+ 2 for older versions.

MBS Xojo Plugins 17.3 - 18th July 2017

  • Updated PostgreSQL to version 9.6.3.
  • Updated SQLite to 3.19.3.
  • Disabled linux version script linker option.

MBS Xojo Plugins 17.2 - 15th May 2017

  • Fixed an issue with writing BLOB fields into Firebird database via SQLPreparedStatementMBS class.
  • Fixed bug in SQLNumericMBS.NumericWithCurrency when using small negative numbers.
  • Updated PostgreSQL to version 9.6.2.
  • Updated SQLAPI to version 4.1.11.
  • Updated SQLite to 3.18.0.
  • Removed PPC code.

MBS Xojo Plugins 17.1 - 14th March 2017

MBS Xojo Plugins 17.0 - 23rd January 2017

  • Changed SQL plugin to detect ODBC to FileMaker and handle that better for reading text fields and avoid a crash.
  • Updated SQLite to 3.16.2.
  • Changed plugin file names to include name of plugin and name of part.
The biggest plugin in space...




Links
MBS FileMaker blog