java - 如何将带有 AES_ENCRYPT 的 mariadb ddl 转换为 jooq?
问题描述
rwDsl.insertInto(table)
.columns(
table.TITLE,
table.DESCRIPTION
)
.values(
aesEncrypt(
x.getTitle(),
sha1(concat("", Long.toString(created)).toString())
),
aesEncrypt(x.getDescription(), concat("", Long.toString(created)).toString()).toString().getBytes())
不工作...
我想要这个 ddl 转换 jooq
insert into table(title, description)
values (AES_ENCRYPT("title_test", "11111"),AES_ENCRYPT("description_test", "11111"))
解决方案
当 jOOQ 不支持某些特定于供应商的功能时,请始终使用纯 SQL 模板:
public static Field<String> aesEncrypt(
Field<String> string,
Field<String> keyString
) {
return DSL.field("aes_encrypt({0}, {1})",
string.getDataType(),
string,
keyString
);
}
推荐阅读
- xpath - 元素文本的 XPath
- ios - 功能未在位置触发的通知应用程序中触发
- docker - 运行串联命令失败
- html - 角 10 | 不同的 ID 类型 | 如何使用 css 文件添加 css 样式
- docker - 如何运行 gcr.io/google-containers/echoserver:1.8 图像?
- python - Flask Swagger UI 无法找到 swagger.json
- javascript - 从 SASS 文件中导入 npm 包(带有字体)
- amazon-web-services - 如何定期自动刷新 RDS 表中的数据?
- python-3.x - 如何重载python集以接受重复项?
- azure - Azure PaaS 到 PaaS 网络通信