没有代码生成的 Jooq insert 语句
Jooq insert statement without code generation
我正在使用 jOOQ 生成 SQL 语句。如何创建插入语句?我能够生成 select 语句,但无法生成插入语句。我可以像这样创建一个 select 语句:
String selectSQL = create.select().from("author").getSQL();
如何为插入
创建SQL语句
try {
Class.forName("com.mysql.cj.jdbc.Driver");
dbConnection = DriverManager.getConnection("jdbc:mysql://localhost:3306/library?autoReconnect=true&useSSL=false","root","abcd");
DSLContext create = DSL.using(dbConnection,SQLDialect.MYSQL);
String SQl = create.insertInto(Table<?> table("author"), Field<Object> field("id"),Field<Object> field("first_name").Field<Object> field("last_name")).values("1", "askdfj", "kdjvk").getSQL();
}
官方文档中有一个example
create.insertInto(AUTHOR,
AUTHOR.ID, AUTHOR.FIRST_NAME, AUTHOR.LAST_NAME)
.values(100, "Hermann", "Hesse");
您需要使用:
create
.insertInto(table("author"), field("id"), field("first_name"), field("last_name"))
.values("1", "askdfj", "kdjvk")
其中 table
和 field
是 org.jooq.impl.DSL.table
和 org.jooq.impl.DSL.field
的静态导入。
请注意,您的代码有几个语法错误(例如 Table<?>
和 Field<Object>
不属于它们,.
而不是 ,
。
我正在使用 jOOQ 生成 SQL 语句。如何创建插入语句?我能够生成 select 语句,但无法生成插入语句。我可以像这样创建一个 select 语句:
String selectSQL = create.select().from("author").getSQL();
如何为插入
创建SQL语句try {
Class.forName("com.mysql.cj.jdbc.Driver");
dbConnection = DriverManager.getConnection("jdbc:mysql://localhost:3306/library?autoReconnect=true&useSSL=false","root","abcd");
DSLContext create = DSL.using(dbConnection,SQLDialect.MYSQL);
String SQl = create.insertInto(Table<?> table("author"), Field<Object> field("id"),Field<Object> field("first_name").Field<Object> field("last_name")).values("1", "askdfj", "kdjvk").getSQL();
}
官方文档中有一个example
create.insertInto(AUTHOR,
AUTHOR.ID, AUTHOR.FIRST_NAME, AUTHOR.LAST_NAME)
.values(100, "Hermann", "Hesse");
您需要使用:
create
.insertInto(table("author"), field("id"), field("first_name"), field("last_name"))
.values("1", "askdfj", "kdjvk")
其中 table
和 field
是 org.jooq.impl.DSL.table
和 org.jooq.impl.DSL.field
的静态导入。
请注意,您的代码有几个语法错误(例如 Table<?>
和 Field<Object>
不属于它们,.
而不是 ,
。