【发布时间】:2013-09-26 22:58:38
【问题描述】:
我正在尝试使用休眠进行插入,但遇到了问题。当我使用以下代码时
@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 拒绝。如何让休眠在列名周围添加引号,以便查询如下所示:
mysql> insert into test_results (`db`, `host`) values ('db1', 'host1');
【问题讨论】:
-
我不认为这是对 mysql 的无效声明。您是否收到语法错误或任何其他错误?
-
@porfiriopartida 直到您使用 MySQL 保留关键字作为列名。
-
对.. dev.mysql.com/doc/refman/5.0/en/reserved-words.html 我认为这只是为了防止超过 1 个单词的表和字段的命名问题(就像 phpmyadmin 一样)......很有趣。