Java 添加mysql特定的ROW_FORMAT=DYNAMIC以创建由jooq生成的表语句
我有一个应用程序,我需要向后移植到mysql 5.6 此应用程序使用相当大的复合密钥,在mysql 5.7上运行良好,因为默认情况下启用了innodb large prefix 我可以将mysql 5.6配置为使用innodb大前缀,但它还需要创建具有Java 添加mysql特定的ROW_FORMAT=DYNAMIC以创建由jooq生成的表语句,java,mysql,jooq,mysql-5.6,Java,Mysql,Jooq,Mysql 5.6,我有一个应用程序,我需要向后移植到mysql 5.6 此应用程序使用相当大的复合密钥,在mysql 5.7上运行良好,因为默认情况下启用了innodb large prefix 我可以将mysql 5.6配置为使用innodb大前缀,但它还需要创建具有ROW_FORMAT=DYNAMIC或COMPRESSED的表 下面是我想使用jooq实现的SQL示例: CREATE TABLE `domain` ( `path` varchar(300) NOT NULL, UNIQUE KEY `i
ROW_FORMAT=DYNAMIC
或COMPRESSED
的表
下面是我想使用jooq
实现的SQL示例:
CREATE TABLE `domain` (
`path` varchar(300) NOT NULL,
UNIQUE KEY `index1` (`path`)
) ROW_FORMAT=DYNAMIC;
以下是mysql 5.6文档供参考:
您可以使用以下方法将自定义存储子句添加到
CREATE TABLE
语句中。例如
ctx.createTable("domain")
.column("path", VARCHAR(300).nullable(false))
.constraint(constraint("index1").unique("path"))
.storage("ROW_FORMAT=DYNAMIC")
.execute();
人们总是可以信赖约克和卢卡斯。无论如何,我猜文档有点落后于新功能,因为我在这里找不到这个:在我看来,你的答案似乎是一个完美的例子。