The MBS Xojo SQL Plugin
All plugins
Documentation
Download
Mailing list
Order SQL Plugin license
Plugin Content
Release Notes
Access SQL Databases
This plugin is included in our plugin archive:
Download the MBS Xojo Plugins |
||||||
macOS MBS-Xojo-Plugins250.dmg |
Windows MBS-Xojo-Plugins250.zip |
Linux MBS-Xojo-Plugins250.zip |
||||
All archives contain the same content. |
MBS SQL Plugin.pdf | 1.4M |
You can order a license here: Order
This plugin part is not included if you order a Complete set license. You can use it independend of all the other plugins.
Our MBS Xojo SQL Plugin is an alternative database interface to Xojo. It can be used either with the database class (via SQLDatabaseMBS class) or with our own SQLConnectionMBS class which gives more options.
- Connect to 14 different database systems directly without the need for ODBC.
- Access databases where no plugin comes with Xojo: DB2, Sybase, SQL Anywhere, Informix, DuckDB, Firebird and Interbase.
- Connect to SQL databases in multithreaded mode for better GUI responsibility.
- Connect to MongoDB via the mysql interface of MongoDB Connector for BI or check out our MongoDB plugin classes.
- Use MySQL with Enterprise, Community or embedded libraries.
- Connect to Microsoft SQL Server without installing native client using OLEDB option.
- Use your own copy of the native connector library.
- Use SQLCipher library with Xojo, a version of SQLite with built in encryption.
- Built-in SQLite library with SQLite Encryption Extension. Compatible to Xojo's encrypted databases and offering AES 128, 256 and RC4 encryption.
- Built-in CubeSQL client library with SSL and AES support.
- Prepared Statements improved
- Bind parameters to prepared statements by name instead of index.
- Binding type is optional on prepared statements.
- Bind using variants or dictionary with values.
- Inspect bound values in debugger.
- Improved performance
- Depending on what you do with your database our plugins can be magnitudes faster!
- Transfer rows in bulk mode to reduce network traffic and increase speed.
- Perform SQL queries and SQL commands in multithreaded mode for better GUI responsibility.
- Handle blob values with more than one GB of size by streaming in chunks.
- Integrated for Xojo
- Works with Xojo with iOS, Web, Desktop and Console.
- Can provide RecordSets for use with Xojo reports engine.
- Extra features
- Use SpatiaLite library with Xojo.
- Use API for online Backups in SQLite.
- Supports moving forward/backword, first and last in result sets.
- We ping the servers regularly to keep connection alive.
This plugin uses the SQLAPI++ Library and if you use this plugin, read also their documentation for the details on connecting to database servers.
Xojo Developer Magazine
You can read an article about the MBS SQL Plugin in the Xojo Developer Magazine, issue 14.1. See website.
Xojo Lite
If you have Xojo Lite, you can only use SQLConnectionMBS and SQLCommandMBS classes. You can't touch anything with DatabaseRow, RowSet or Database class.
You need a Desktop, Web iOS, Pro or Pro Plus license for Xojo to get database access. Then you can use the Database, DatabaseRow and RowSet classes with our plugin, e.g. using SQLDatabaseMBS class. Of course you can also use SQLConnectionMBS or SQLCommandMBS classes if you prefer these.
SQL Interfaces
The MBS Xojo SQL Plugin is a Xojo plugin for accessing multiple SQL databases (CubeSQL, Centura SQLBase, DB2, DuckDB, Firebird, Informix, InterBase, MariaDB, Microsoft Access, Microsoft SQL Server, MySQL, ODBC, Oracle Database Server, PostgreSQL, SQL Anywhere, SQLite, SQLCipher and Sybase). It uses native APIs of target DBMS so applications developed with this plugin run swiftly and efficiently. The product also provides a low-level interface that allows developers to access database-specific features. By encapsulating a vendor's API, the plugin acts as middleware and delivers database portability. See details on supporting SQL database servers on different platforms:
Server | Windows | MacOS and Linux |
---|---|---|
Oracle Database Server | Supported (OCI) | Supported (OCI) |
Microsoft SQL Server | Supported (DB-Library, OLE DB) | FreeTDS ODBC driver should be used |
Sybase | Supported (Open Client, ASE & ASA) | Supported (Open Client, ASE & ASA) |
DB2 | Supported (DB2 CLI) | Supported (DB2 CLI) |
Informix | Supported (Informix CLI) | Supported (Informix CLI) |
Firebird | Supported | Supported |
InterBase | Supported | Supported |
Centura (formerly Gupta) SQLBase | Supported (CAPI) | Supported (CAPI) |
MySQL / MariaDB | Supported (MySQL C API) | Supported (MySQL C API) |
PostgreSQL | Supported (libpq) | Supported (libpq) |
ODBC | Supported | Supported (iODBC, see www.iodbc.org) |
SQLite | Supported | Supported |
SQLite Encrypted | Supported | Supported |
SQL Anywhere | Supported | Supported |
CubeSQL | Supported | Supported |
Connect to Microsoft Access, Claris FileMaker Server (or Pro), Microsoft Visual FoxPro and others via ODBC. Connect to MongoDB via the mysql interface of MongoDB Connector for BI or check out our MongoDB plugin classes.
We have two interfaces in this plugin. SQLConnectionMBS is the native one and gives more flexibility. There is also SQLDatabaseMBS for easier porting of existing projects to our SQL Plugin. As SQLDatabaseMBS class is a subclass of the Database class, it may require a Xojo Database Server license to use (this depends on the exact rules Xojo, Inc. sets).
As with Xojo, the SQLConnectionMBS class works without a Database Server license. For the SQLDatabaseMBS class you need the Database Server license as it is a subclass for the database class.
Works with MacOS, iOS, Windows and Linux for Desktop, Mobile, Console and Web.
You do not need to compile or provide your own SQLAPI library as the plugin contains SQLAPI. You may need database access libraries from the database vendors.
For your information:
The MBS Xojo SQL Plugin license includes a cross-platform unlimited license of SQLAPI++ which costs 299 USD for a C/C++ developer. Of course this bundled license works only inside the plugin. If you want to develop with SQLAPI in C/C++, please order a separate license from SQLAPI.com website.
For using JDBC (Java Database Connection) for connecting to database using a java driver, please use our MBS Xojo Java Plugin With the JavaDatabaseMBS class.
See also our SQLite Extension, which adds extra commands for use in SQLite databases.
Xojo Developer Magazine Articles
- The MBS SQL Plugin in issue 14.1
Watch tutorial videos:
MBS SQL Plugin Presentation (English) 18:29 minutes |
The documentation for MBS SQL Plugin:
show all functions and classes in this plugin.
Examples for this plugin:
- /SQL/BuildRecordSetMBS test
- /SQL/CubeSQL Version
- /SQL/CubeSQL Version iOS
- /SQL/DB2 Connect
- /SQL/DuckDB Version
- /SQL/Environment Test
- /SQL/FileMaker ODBC Connect
- /SQL/Firebird Connect
- /SQL/Firebird Query
- /SQL/Informix Connect
- /SQL/Microsoft SQL Connect
- /SQL/Microsoft SQL Stored Procedure
- /SQL/Microsoft SQL via ODBC
- /SQL/Microsoft SQL via ODBC on Linux
- /SQL/Microsoft SQL via ODBC on Mac
- /SQL/MySQL Connect
- /SQL/MySQL Connect via SSH
- /SQL/MySQL ExecuteSQL
- /SQL/MySQL ExecuteSQL with Parameters
- /SQL/MySQL Fetch rows bulk
- /SQL/MySQL Fetch values
- /SQL/MySQL Query Version
- /SQL/MySQL Update values
- /SQL/MySQL Write blob to file
- /SQL/ODBC Connect
- /SQL/Oracle Connect
- /SQL/PostgreSQL API
- /SQL/PostgreSQL Connect
- /SQL/PostgreSQL Notify and Listen
- /SQL/PostgreSQL RecordCount
- /SQL/Reporting From A Database/Reports Example with MBS
- /SQL/SQL Exception Tests
- /SQL/SQL Unit Tests
- /SQL/SQLDatabase Firebird Connect
- /SQL/SQLDatabaseMBS CubeSQL prepared statement
- /SQL/SQLDatabaseMBS CubeSQL prepared statement iOS
- /SQL/SQLDatabaseMBS CubeSQL select version
- /SQL/SQLDatabaseMBS DuckDB
- /SQL/SQLDatabaseMBS Firebird Connect
- /SQL/SQLDatabaseMBS Microsoft Access Connect
- /SQL/SQLDatabaseMBS Microsoft SQL Connect
- /SQL/SQLDatabaseMBS Microsoft SQL Connect and query version
- /SQL/SQLDatabaseMBS Microsoft SQL cross platform
- /SQL/SQLDatabaseMBS Microsoft SQL Execute Stored Procedure
- /SQL/SQLDatabaseMBS Microsoft SQL Server Data Types
- /SQL/SQLDatabaseMBS Microsoft SQL Stored Procedure
- /SQL/SQLDatabaseMBS Microsoft SQL via ODBC
- /SQL/SQLDatabaseMBS Microsoft SQL via ODBC on Linux
- /SQL/SQLDatabaseMBS MSSQL Connect
- /SQL/SQLDatabaseMBS MSSQL Execute
- /SQL/SQLDatabaseMBS MSSQL Fetch values
- /SQL/SQLDatabaseMBS MySQL Connect
- /SQL/SQLDatabaseMBS MySQL Dump
- /SQL/SQLDatabaseMBS MySQL Fetch blob
- /SQL/SQLDatabaseMBS MySQL Fetch values
- /SQL/SQLDatabaseMBS ODBC Connect
- /SQL/SQLDatabaseMBS Oracle Connect
- /SQL/SQLDatabaseMBS PostgreSQL
- /SQL/SQLDatabaseMBS PostgreSQL Connect
- /SQL/SQLDatabaseMBS PostgreSQL Notify and Listen
- /SQL/SQLDatabaseMBS SQL Anywhere Connect
- /SQL/SQLDatabaseMBS SQLite API 2
- /SQL/SQLDatabaseMBS SQLite Blob test
- /SQL/SQLDatabaseMBS SQLite Connect
- /SQL/SQLDatabaseMBS SQLite Connect console
- /SQL/SQLDatabaseMBS SQLite Connect in Memory Database
- /SQL/SQLDatabaseMBS SQLite Create Encrypted
- /SQL/SQLDatabaseMBS SQLite custom function
- /SQL/SQLDatabaseMBS SQLite Encryption Fetch values
- /SQL/SQLDatabaseMBS SQLite ExecuteSQL
- /SQL/SQLDatabaseMBS SQLite ExecuteSQL threaded
- /SQL/SQLDatabaseMBS SQLite ExecuteSQL with Workers
- /SQL/SQLDatabaseMBS SQLite Fetch values
- /SQL/SQLDatabaseMBS SQLite Fetch values threaded
- /SQL/SQLDatabaseMBS SQLite insert record
- /SQL/SQLDatabaseMBS SQLite insert record with transaction
- /SQL/SQLDatabaseMBS SQLite load extension
- /SQL/SQLDatabaseMBS SQLite Prepared Statement
- /SQL/SQLDatabaseMBS SQLite select version
- /SQL/SQLite Backup
- /SQL/SQLite Benchmark vs REALSQLDatabase
- /SQL/SQLite Blob test
- /SQL/SQLite Connect
- /SQL/SQLite Connect in Memory Database
- /SQL/SQLite Display Schema
- /SQL/SQLite Encryption Fetch values
- /SQL/SQLite ExecuteSQL
- /SQL/SQLite ExecuteSQL with Parameters
- /SQL/SQLite Fetch rows bulk
- /SQL/SQLite Fetch values
- /SQL/SQLite Fetch values with Recordset
- /SQL/SQLite Fetch values with RowSet
- /SQL/SQLite Internal Library Compiler Options
- /SQL/SQLite load extension
- /SQL/SQLite Lock Test/SQLite Busy Handler
- /SQL/SQLite select version
- /SQL/SQLite select version with Trace events
- /SQL/SQLite Table Definition
- /SQL/SQLite Unicode test
- /SQL/SQLite Update values
- /SQL/SQLite Version
- /SQL/SQLite Version with sqlcipher
- /SQL/SQLite with ICU
- /SQL/SQLite Write blob to file
- /SQL/Sybase Connect
- /SQL/Web app/with SQLConnectionMBS
- /SQL/Web app/with SQLDatabaseMBS
- /SQL/Xojo SQLite custom function
Watch tutorial videos:
Blog Entries
- Edit and Update for SQLDatabaseMBS class
- New SQL Insert and Update functions for our Xojo Plugin
- Problems with killing Xojo threads with plugin calls.
- XDC 2016 videos are here!
- SQLite 3.13 with ICU
- xDev Magazine Issue 14.1
- MBS Xojo / Real Studio plug-ins in version 15.4
- MBS Releases the MBS Xojo Encryption Kit in version 1.0
- SQLPreparedStatementMBS improvements
- Connecting to a Firebird database using Xojo, Real Studio or FileMaker
Videos
- MBS SQL Plugin Presentation
- XDC 2020 MBS Plugins Presentation
- Presentation from Munich conference about MBS Plugins.
- Presentation from London conference about MBS Plugins.
- XDC Anywhere - MBS Xojo Plugins
- Presentation from Xojo Developer Conference 2019 in Miami.
- MBS Xojo Videos - MBS Xojo Plugin, June 2021 News
Xojo Developer Magazine
- 22.1, page 9: News
- 21.1, page 9: News
- 21.1, page 26: News from MBS Xojo Plugins, What's up with MonkeyBread Software by Stefanie Juchmes
- 18.5, page 9: News
- 18.5, page 10: News
- 14.1, pages 24 to 30: The MBS SQL Plugin, An alternative way to connect to databases by Christian Schmitz
- 13.4, page 11: News
- 12.4, page 9: News
- 11.3, page 41: Welcome to Xojo, Real Studio gets a new identity by Marc Zeedar
- 11.2, page 8: News
Content of SQL Plugin.