Client Development

NuoDB supports client connections by means of drivers written for various interfaces:

  • Application Programming Interfaces (APIs) — An API is the specification of methods for interfacing with a database. A driver is the implementation of that API. Examples of database APIs include JDBC, Python, PHP PDO and NuoDB’s C++ API and C API.

  • Object Relational Mappings (ORMs) — An ORM maps relational schemas (tables, columns, scalar data) to object-oriented schemas. An example is Hibernate. NuoDB provides a Hibernate dialect and a Java class to do the mapping, which sits on top of NuoDB’s JDBC driver.

When a NuoDB client connects to the NuoDB database, it negotiates a client protocol version that both the client and the database agree on. This ensures that any client version can work with any NuoDB database version (both clients newer than the database and clients older than the database are supported). You do not have to choose the latest available client or the client included in the same release (for clients that are shipped with the NuoDB software). However, newer client versions contain bug fixes and may be able to take advantage of newer features of the database for improved performance.

Fully supported client interfaces are distributed as part of the Client-only package and are also available on GitHub. Other community supported drivers (for example .NET, Perl and others) are only available on GitHub - for more information, see NuoDB Drivers. The documentation for each interface includes the following types of information where applicable:

  • Requirements — software you must have installed.

  • Installation — where files are installed and any steps you need to complete.

  • Common database operations — basic operations such as creating a connection and executing a query.

  • Additional usage information — various topics to help you use the interface successfully.

  • Troubleshooting — issues you might encounter and how to resolve them.

  • See also — pointers to additional information you might find useful.

  • Examples — samples that illustrate how to use the interface.

NuoDB provides a REST API to manage databases.