我在hsqldb测试中遇到了一点问题。
<bean name="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="org.hsqldb.jdbcDriver" />
<property name="url" value="jdbc:hsqldb:mem:castor;sql.syntax_ora=true" />
<property name="username" value="sa" />
<property name="password" value="" />
</bean>
<prop key="hibernate.dialect">fr.edf.mpv2.castor.persistance.HsqlOracleDialect</prop>
<prop key="hibernate.show_sql">false</prop>
<prop key="hibernate.hbm2ddl.auto">create</prop>
<prop key="hibernate.hbm2ddl.import_files">import.sql</prop>
我在import.sql中添加了我需要的所有内容,它工作得很好。
我创建了一个类:
public class HsqlOracleDialect extends Oracle10gDialect {
public HsqlOracleDialect() {
super();
}
@Override
protected void registerFunctions() {
registerFunction("regexp_like", new SQLFunctionTemplate(Hibernate.BOOLEAN,
"case when (regexp_like(?1,?2)) then 1 else 0 end)"));
}
}
但是我得到了这个错误:
您在自定义函数的定义中使用了原始函数regexp_like
。因此,当HSQLDB试图创建它时,它失败了,因为它正在寻找一个具有此名称的内置函数来委托实现。
HSQLDB的内置函数regexp_matches
似乎是Oracle的regexp_like
对应函数,因此应该可以这样做:
@Override
protected void registerFunctions() {
registerFunction(
"regexp_like",
new SQLFunctionTemplate(Hibernate.BOOLEAN, "regexp_matches(?1,?2)")
);
}
所以我已经在谷歌和stack上搜索过了,我找到了一堆有同样错误的人,但是没有一个解决方案能解决我的问题。 我正在使用的: Java 8 JavaEE7 TomEE 7.0 M3 JPA 2.0 ORM 1.0 Postgres公司 我认为问题在于命名查询,也许还有ManyToMany关系。 User.java SystemRole.java 持久性.xml user-orm.xml context
我遵循了以下基本的Spring批量教程https://spring.io/guides/gs/batch-processing/ . > 我正在使用IntelliJ 14并创建了一个Spring批处理项目 我在用Mavin。我还有pom。xml文件。 Mvn clean install运行良好,即使应用程序。java告诉我“无法自动连线。找不到JdbcTemplate类型的bean”@Autowi
我发现这个错误在整个互联网上出现了很多次,但我根本没有找到适合我的情况的解决方案。我有一个 HSQL 数据库 - 我已成功连接到数据库中的一个表。我继续在数据库中创建另一个表 - 根据需要修改完全相同的 Java 代码,但它带来了错误:java.sql.SQLSyntaxErrorException:用户缺少权限或找不到对象:USER。 我发现在我的文件存储脚本中,PRODUCT表创建的代码就在那
我正在尝试做一些Ucanaccess实践,用Java管理一些数据库。我得到了一个我不知道如何解决的错误。 我在Access中有一个名为USERS的表: 自动编号,短文本,短文本,数字。 代码继续,但只有一些条件和查询。
当我试图将数据放入数据库时,我出现了一个错误,这是我的注册函数