App Development Overview

TiDB supports the MySQL protocol and most of the MySQL features. In general, to develop your application based on TiDB, you can use either native driver/connectors or popular third-party frameworks like ORM and migration tools.

This document lists some of the app development guides that show you how to build simple applications based on TiDB.

Note

The support levels for connectors and ORM frameworks are described as follows:

  • Full support: There is no known issue using the driver or connector with TiDB.
  • Verified support: You might encounter errors when using some of the features, due to "unsupported features" of TiDB. For example, TiDB does not support Foreign Key constraints, so the foreign key related features do not work in Hibernate. However, all other features have been verified.

Connectors

Go
NameRecommended versionsSupport levelExample
MySQL connectorFullApp Development for go-sql-drive/mysql
Java
NameRecommended versionsSupport levelExample
JDBC/MySQL connector5.1.36 or laterFullNA
Python
NameRecommended versionsSupport levelExample
python/mysql-connector8.0 or laterFullApp Development for mysql-connector-python
Ruby
NameRecommended versionsSupport levelExample
Mysql20.5.3FullNA
PHP
NameRecommended versionsSupport levelExample
PDO_MYSQLAllFullNA

ORM frameworks

Go
NameRecommended versionsSupport levelExample
GORMVerifiedApp Development for GORM
Java
NameRecommended versionsSupport levelExample
Hibernate5.2 or laterVerifiedApp Development for Hibernate ORM
Python
NameRecommended versionsSupport levelExample
Django3.2.xVerifiedApp Development for Django
SQLAlchemy1.4 or laterVerifiedApp Development for SQLAlchemy
Ruby
NameRecommended versionsSupport levelExample
ActiveRecord6.1VerifiedPower Up Your Rails Apps with a NewSQL Database
PHP
NameRecommended versionsSupport levelExample
Laravel5.1 or laterVerifiedApp Development for Laravel
Was this page helpful?