diff options
-rw-r--r-- | odb/mysql/mysql-types.hxx | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/odb/mysql/mysql-types.hxx b/odb/mysql/mysql-types.hxx index b4ec44a..32cb332 100644 --- a/odb/mysql/mysql-types.hxx +++ b/odb/mysql/mysql-types.hxx @@ -7,8 +7,22 @@ #include <odb/mysql/details/config.hxx> +#include <odb/mysql/version.hxx> + +// Starting with 8.0.1 instead of my_bool MySQL uses bool directly. We keep +// using the alias for compatibility with previous versions. +// +#if !defined(LIBODB_MYSQL_MARIADB) && MYSQL_VERSION_ID >= 80001 +typedef bool my_bool; +#else typedef char my_bool; +#endif + +// Starting with 8.0.11 MySQL renamed st_mysql_bind to MYSQL_BIND. +// +#if defined(LIBODB_MYSQL_MARIADB) || MYSQL_VERSION_ID < 80011 typedef struct st_mysql_bind MYSQL_BIND; +#endif // MariaDB defines time types directly in mysql.h. Note that MariaDB is only // supported by the build2 build so we include the header as <mysql/mysql.h> |