gpt4 book ai didi

java - 如何使用 JOOQ 创建架构?

转载 作者:搜寻专家 更新时间:2023-11-01 03:34:06 25 4
gpt4 key购买 nike

我正在尝试使用 JOOQ 创建一个 Vertica 表3.5.x:

Connection connection = create();
DSLContext dslContext = DSL.using(connection);
Field<String> myColumn = DSL.field("my_column", SQLDataType.VARCHAR);
Table table = DSL.tableByName("my_schema", "my_table");
dslContext.createTable(table)
.column(myColumn, myColumn.getDataType())
.execute();

架构“my_schema”不存在失败。

我可以解决它:

dslContext.execute("create schema if not exists my_schema");

但是有没有更优雅的方法来使用 JOOQ 创建模式?

最佳答案

目前 JOOQ 仅涵盖可能的子集 DDL可以针对服务器执行的语句和架构管理尚未包括在内,因此您必须退回到计划旧 SQL。

如果您需要做大量的 DDL 工作,您应该开始查看最新版本 3.8,因为它扩展了包含的功能

  • CREATE TABLE 或 ALTER TABLE 语句中的 DEFAULT 列值
  • 如果在 DROP 语句中存在
  • 如果在 CREATE 语句中不存在
  • 更改表 .. { 重命名 |重命名列 | RENAME CONSTRAINT } 语句

添加了 3.6 版

  • ALTER TABLE 添加约束(使用 UNIQUE、PRIMARY KEY、FOREIGN KEY、CHECK)
  • 改变表删除约束
  • 创建临时表

关于java - 如何使用 JOOQ 创建架构?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37032604/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com