From 6a66f46d4b416ce3408f8d938032d8b95265b1bb Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Thu, 6 Apr 2017 18:15:50 +0200 Subject: Map string keys to MySQL VARCHAR(128) instead of 255 to support 4-byte UTF-8 This is a backwards-incompatible change in that it may change your schema. To obtain the old behavior you will have to explicitly re-map std::string with the id_type pragma or explicitly specify the database type for each affected id member with the type pragma. --- odb/relational/mysql/schema.cxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'odb/relational/mysql/schema.cxx') diff --git a/odb/relational/mysql/schema.cxx b/odb/relational/mysql/schema.cxx index 5b1ad26..fe29d03 100644 --- a/odb/relational/mysql/schema.cxx +++ b/odb/relational/mysql/schema.cxx @@ -461,7 +461,7 @@ namespace relational pre_statement (); os << "CREATE TABLE IF NOT EXISTS " << qt_ << " (" << endl - << " " << qn_ << " VARCHAR(255) NOT NULL PRIMARY KEY," << endl + << " " << qn_ << " VARCHAR(128) NOT NULL PRIMARY KEY," << endl << " " << qv_ << " BIGINT UNSIGNED NOT NULL," << endl << " " << qm_ << " TINYINT(1) NOT NULL)" << endl; -- cgit v1.1