MySQL Connectors and APIs

Connectors and APIs

MySQL Connectors provide connectivity to the MySQL server for client programs and APIs provide low-level access to the MySQL protocol and resources. You can connect and execute MySQL statements from another language or environment, including ODBC, Python, Perl, Ruby, PHP, Java (JDBC), and native C and embedded MySQL instances through connectors and the APIs

What is a Driver?
A driver is a piece of software designed to communicate with a particular database server. The driver may also call a library, such as the 'MySQL Client Library' or the 'MySQL Native Driver'. These libraries implement the low-level protocol used to communicate with the database server.

What is a Connector?
A connector refers to a piece of software that allows your application to connect to the MySQL database server. MySQL provides connectors for a variety of languages, including Python, Perl, Ruby, PHP, Java (JDBC), C etc.

What is an API?
API, an abbreviation of application program interface, is a set of programming instructions (through classes, methods, functions and variables) and standards for accessing a web-based software application or web tool.
APIs can be procedural or object-oriented. With a procedural API you call functions to carry out tasks, with the object-oriented API, you instantiate classes and then call methods on the resulting objects. Of the two the second one is usually the preferred interface, as it is more modern and leads to better-organized code.

List of MySQL Connectors

  • ODBC/Connector : It provides driver support for connecting (Windows, Unix, and Mac OS X platforms.) to MySQL using the Open Database Connectivity (ODBC) API.
  • .Net/Connector : It provides support to create .NET applications that connect to MySQL.
  • J/Connector : It provides driver support for connecting to MySQL from Java applications using Java Database Connectivity (JDBC) API.
  • Python/Connector : It provides driver support for connecting to MySQL from Python applications using Python DB API version 2.0.
  • C++/Connector : is a standalone replacement for the MySQL Client Library (libMySQLclient), to be used for C applications.

Note : libMySQLclient is included in MySQL distributions and in MySQL Connector/C distributions.

List of Third-Party MySQL APIs

Language API Type  
Ada GNU Ada MySQL Bindings libMySQLclient  MySQL Bindings for GNU Ada
C C API libMySQLclient  Section 23.8, “MySQL C API”.
C Connector/C Replacement forlibMySQLclient  MySQL Connector/C Developer Guide.
C++ Connector/C++ libMySQLclient  MySQL Connector/C++ Developer Guide.
  MySQL++ libMySQLclient  MySQL++ Web site.
  MySQL wrapped libMySQLclient  MySQL wrapped.
Cocoa MySQL-Cocoa libMySQLclient Compatible with the Objective-C Cocoa environment.  http://MySQL-cocoa.sourceforge.net/
D MySQL for D libMySQLclient  MySQL for D.
Eiffel Eiffel MySQL libMySQLclient  Section 23.14, “MySQL Eiffel Wrapper”.
Erlang erlang-MySQL-driver libMySQLclient  erlang-MySQL-driver.
Haskell Haskell MySQL Bindings Native Driver  Brian O'Sullivan's pure Haskell MySQL bindings.
  hsql-MySQL libMySQLclient  MySQL driver for Haskell .
Java/JDBC Connector/J Native Driver  MySQL Connector/J Developer Guide.
Kaya MyDB libMySQLclient  MyDB.
Lua LuaSQL libMySQLclient  LuaSQL.
.NET/Mono Connector/Net Native Driver  MySQL Connector/Net Developer Guide.
Objective Caml OBjective Caml MySQL Bindings libMySQLclient  MySQL Bindings for Objective Caml.
Octave Database bindings for GNU Octave libMySQLclient  Database bindings for GNU Octave.
ODBC Connector/ODBC libMySQLclient  MySQL Connector/ODBC Developer Guide.
Perl DBI/DBD::MySQL libMySQLclient  Section 23.10, “MySQL Perl API”.
  Net::MySQL Native Driver  Net::MySQL at CPAN
PHP MySQL, ext/MySQLinterface (deprecated) libMySQLclient Original MySQL API (MySQL).
  MySQLi,ext/MySQLiinterface libMySQLclient  MySQL Improved Extension (MySQLi).
  PDO_MySQL libMySQLclient  MySQL Functions (PDO_MySQL) (MySQL (PDO)).
  PDO MySQLnd Native Driver  
Python Connector/Python Native Driver  MySQL Connector/Python Developer Guide.
  MySQLdb libMySQLclient MySQL Python API
Ruby MySQL/Ruby libMySQLclient Uses libMySQLclient.  The MySQL/Ruby API.
  Ruby/MySQL Native Driver  Section 23.12.2, “The Ruby/MySQL API”.
Scheme Myscsh libMySQLclient  Myscsh.
SPL sql_MySQL libMySQLclient  sql_MySQL for SPL.

List of MySQL Connector and Server versions

Connector Connector version MySQL Server version
Connector/C 6.1.0 GA 5.6, 5.5, 5.1, 5.0, 4.1
Connector/C++ 1.0.5 GA 5.6, 5.5, 5.1
Connector/J 5.1.8 5.6, 5.5, 5.1, 5.0, 4.1
Connector/Net 6.5 5.6, 5.5, 5.1, 5.0
Connector/Net 6.4 5.6, 5.5, 5.1, 5.0
Connector/Net 6.3 5.6, 5.5, 5.1, 5.0
Connector/Net 6.2 (No longer supported) 5.6, 5.5, 5.1, 5.0
Connector/Net 6.1 (No longer supported) 5.6, 5.5, 5.1, 5.0
Connector/Net 6.0 (No longer supported) 5.6, 5.5, 5.1, 5.0
Connector/Net 5.2 (No longer supported) 5.6, 5.5, 5.1, 5.0
Connector/Net 1.0 (No longer supported) 5.0, 4.0
Connector/ODBC 5.1 5.6, 5.5, 5.1, 5.0, 4.1.1+
Connector/ODBC 3.51 (Unicode not supported) 5.6, 5.5, 5.1, 5.0, 4.1

Next : MySQL ODBC Connection.

Previous: PHPMyAdmin
Next: MySQL ODBC Connector

Follow us on Facebook and Twitter for latest update.