Top Downloads News Highlights

A McObject Focus—What’s Changing in the Satellite Industry? Read the article in SatMagazine

McObject records another year of impressive innovation and development. 
Read the press release.

XtremeDB v.8.0 adds a suite of new features for the Internet of Things. 
Read the press release.

BlueScope Chooses McObject's eXtremeDB for its Plate Mill Control System. Learn more.

GoldenSource and McObject Launch Fastest RegTech EDM Solution. Learn more

Big Data & IoT Excellence Awards Shortlist eXtremeDB. Click here to learn more.

Sandvine Upgrades to McObject's eXtremeDB. Read the press release.

ViaSat Selects eXtremeDB from McObject to Optimize Metrics Data from its Satellite Ground Network.
Read the press release.

McObject’s new eXtremeDB® v.7.1 offers better speed, enhanced security and greater flexibility. Learn more.

Read "Industrial Internet of Things (IIoT) Database Usage in Rail Systems" eXtremeDB
 goes rolling into the fog.

Read the article, "On the Challenges and Opportunities of the IoT, Interview with Steve Graves". 

XtremeDB Financial Edition DBMS sweeps records in Big Data benchmark. Get details.

Printable Version

eXtremeDB embedded database application programming interfaces (APIs)

McObject’s eXtremeDB embedded database system provides multiple APIs, enabling developers to choose their preferred interface and to tailor applications for desired performance, predictability, reliability and accessibility to external systems.


Native API

This interface is navigational, consisting of functions that navigate through the database programmatically, working on one record at a time. Major advantages cited for navigational APIs are determinism – it is known, when the application is compiled, exactly how the data will be traversed – and performance, by virtue of bypassing the parsing, optimization and execution of dynamic SQL.


eXtremeDB’s native API for C/C++ is unique in that it is type-safe. The interface functions are generated at compile-time and are specific to a particular data design; the functions “know” the type of data they are intended to handle, and any typing errors will be caught when the application is compiled. This eliminates a major cause of costly run-time bugs. To learn about the benefits of this design, see the EE Times article, Toward self-diagnostic APIs for embedded systems.

In addition, because these C/C++ functions are specific to a given data design, they are highly intuitive, reducing the development learning curve.

Developers in C/C++ can also use eXtremeDB’s Uniform Data Access (UDA) API. This is a static version of the navigational C/C++ API, consisting of a “one size fits all” function library to be used across all database designs.

Java and C#/.NET Framework

The eXtremeDB Java Native Interface (JNI) and C# API enable programmers to work with the database system entirely from within Java or C# application code. There is no external database definition, and no requirement to compile a database schema. Optionally, the Java/C# class definitions can be used to generate a schema that, in turn, can be processed by McObject’s schema compiler, so that C/C++ programs can also use the same database.

eXtremeDB’s native interfaces for Java and C# deliver a significant performance advantage, compared to “pure” Java and C# database solutions, in that the eXtremeDB functions execute with the superior speed of compiled C code.


McObject's eXtremeSQL embedded database interface is a high-performance implementation of SQL for use with eXtremeDB in C and C++ applications. SQL enjoys a high level of familiarity in fields like finance and banking. In addition, with its ability to express complex queries relatively succinctly, SQL can sometimes do more in fewer lines of code. Developers in C and C++ may prefer this SQL API over the SQL ODBC API (discussed below) because it is more concise and a more natural fit for C++ programs.


The eXtremeDB embedded database's support for Microsoft's Open Database Connectivity Standard (ODBC) greatly expands eXtremeDB’s ability to share data with systems ranging from mainframes to servers to desktop applications. Based on the Call Level Interface specified by the SQL Access Group, ODBC is a library of functions that lets any ODBC-enabled application connect to any database for which an ODBC driver exists, and retrieve/insert/update/delete data using SQL statements.

McObject’s implementation of ODBC sustains eXtremeDB’s advantages of speed and minimal resource demands. While applications gain access to most ODBC-compliant databases via driver and driver manager software layers, eXtremeDB also exposes the ODBC API as direct library calls. This streamlined approach eliminates the driver manager and associated program execution steps, leading to faster performance and smaller code size.

For Java, SQL is accessible via eXtremeSQL’s type 3, version 4 JDBC driver. For C#, use the ODBC .NET Managed Provider..

Programming Language C/C++ Java, C#
,eXtremeDB Editions All In-Memory, Fusion, High Availability, Transaction Logging, 64-bit
Get more information about the eXtremeDB embedded database.