gpt4 book ai didi

java - 没有左刻度的 hibernate 插入

转载 作者:行者123 更新时间:2023-11-30 07:13:51 25 4
gpt4 key购买 nike

我正在尝试使用 hibernate 进行插入,但遇到了问题。当我使用下面的代码时

@Override
public Serializable addTestResult(Result test_result) {
// TODO Auto-generated method stub
return getCurrentSession().save(test_result);
}

最终查询如下所示:

mysql> insert into test_results (db, host) values ('db1', 'host1');

它被 mysql 拒绝,因为列名中缺少左勾号。我怎样才能让 hibernate 在列名周围添加引号,以便查询看起来像这样:

mysql> insert into test_results (`db`, `host`) values ('db1', 'host1');

最佳答案

在 .hbm.xml 或映射注释中用 ` 反引号引用您需要引用的表/列名称。

例如:

<property name='DB" column='`db`' />
@Column(name="`db`")

这告诉 Hibernate 将这些标识符引用到数据库中。例如,我将其与 `USER` 表一起使用。与任何应用程序一样,大多数表名和列名并不冲突,但 user 往往是 SQL 关键字。

您无需打开全局报价。

关于java - 没有左刻度的 hibernate 插入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19040069/

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