GBase 8s
适配迁移
问答
sql语句不能执行
发表于2024-05-07 18:31:52242次浏览10个评论
为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【GBase版本】:Gbase 8s
【操作系统】:centos
【CPU】:inter
【问题描述】*:整合spring-jpa sql语句在程序中不能执行

框中的sql语句在 Gbase Data Studio中可以执行成功,在程序中报错不能发现约束 请问是什么原因啊
评论
登录后才可以发表评论
liaosnet发表于 2年前
GBase用户13294发表于 2年前
@liaosnet:一直就是这两个报错 

GBase用户13294发表于 2年前
@liaosnet:我这边使用的是spring-jpa的2.1.0.RELEASE版本 hibernate是5.3.7.Final版本,这个版本需要使用哪个版本的jar包啊
liaosnet发表于 2年前
@GBase用户13294:JDBC使用数据库对应的版本。
hibernate方言包使用5.3.x对应的包(5.3.20) https://gbasedbt.com/dl/hibernate/3.0/
hibernate方言包使用5.3.x对应的包(5.3.20) https://gbasedbt.com/dl/hibernate/3.0/
GBase用户13294发表于 2年前
@liaosnet:Hibernate: /* select generatedAlias0 from SystemParameter as generatedAlias0 where( generatedAlias0.enabled=1 ) and ( generatedAlias0.module=:param0 ) and ( generatedAlias0.name=:param1 ) */
select systempara0_.id as id1_19_, systempara0_.enabled as enabled2_19_, systempara0_.version as version3_19_,systempara0_.module as module4_19_,systempara0_.name as name5_19_, systempara0_.value
as value6_19_,systempara0_.value2 as value7_19_, systempara0_.value3 as value8_19_,systempara0_.value4 as value9_19_, systempara0_.value5 as value10_19_ from t_system_parameter systempara0_
where systempara0_.enabled=1 and systempara0_.module=? and systempara0_.name=?
365980 [http-nio-9092-exec-10] WARN org.hibernate.engine.jdbc.spi.SqlExceptionHelper - SQL Error: -674, SQLState: IX000
365981 [http-nio-9092-exec-10] ERROR org.hibernate.engine.jdbc.spi.SqlExceptionHelper - 不能解析例行程序 (equal)。
517488 [HikariPool-1 housekeeper] WARN com.zaxxer.hikari.pool.HikariPool - HikariPool-1 - Thread starvation or clock leap detected (housekeeper delta=2m59s770ms723µs700ns).
五月 08, 2024 10:34:25 上午 org.apache.catalina.core.StandardWrapperValve invoke
严重: Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is org.springframework.orm.jpa.JpaSystemException: could not prepare statement; nested exception is org.hibernate.exception.GenericJDBCException: could not prepare statement] with root cause
java.sql.SQLException
at com.gbasedbt.util.IfxErrMsg.getSQLException(IfxErrMsg.java:409)
at com.gbasedbt.jdbc.IfxSqli.D(IfxSqli.java:3861)
at com.gbasedbt.jdbc.IfxSqli.dispatchMsg(IfxSqli.java:2746)
at com.gbasedbt.jdbc.IfxSqli.receiveMessage(IfxSqli.java:2671)
at com.gbasedbt.jdbc.IfxSqli.executePrepare(IfxSqli.java:1292)
at com.gbasedbt.jdbc.IfxPreparedStatement.f(IfxPreparedStatement.java:490)
at com.gbasedbt.jdbc.IfxPreparedStatement.a(IfxPreparedStatement.java:471)
at com.gbasedbt.jdbc.IfxPreparedStatement.(IfxPreparedStatement.java:273)
at com.gbasedbt.jdbc.IfxSqliConnect.h(IfxSqliConnect.java:6348)
at com.gbasedbt.jdbc.IfxSqliConnect.prepareStatement(IfxSqliConnect.java:2552)
at com.zaxxer.hikari.pool.ProxyConnection.prepareStatement(ProxyConnection.java:311)
at com.zaxxer.hikari.pool.HikariProxyConnection.prepareStatement(HikariProxyConnection.java)
at org.hibernate.engine.jdbc.internal.StatementPreparerImpl$5.doPrepare(StatementPreparerImpl.java:146)
at org.hibernate.engine.jdbc.internal.StatementPreparerImpl$StatementPreparationTemplate.prepareStatement(StatementPreparerImpl.java:172)
at org.hibernate.engine.jdbc.internal.StatementPreparerImpl.prepareQueryStatement(StatementPreparerImpl.java:148)
at org.hibernate.loader.Loader.prepareQueryStatement(Loader.java:1984)
at org.hibernate.loader.Loader.executeQueryStatement(Loader.java:1914)
at org.hibernate.loader.Loader.executeQueryStatement(Loader.java:1892)
at org.hibernate.loader.Loader.doQuery(Loader.java:937)
at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:340)
at org.hibernate.loader.Loader.doList(Loader.java:2689)
at org.hibernate.loader.Loader.doList(Loader.java:2672)
at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2506)
at org.hibernate.loader.Loader.list(Loader.java:2501)
at org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:504)
at org.hibernate.hql.internal.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:395)
at org.hibernate.engine.query.spi.HQLQueryPlan.performList(HQLQueryPlan.java:220)
at org.hibernate.internal.SessionImpl.list(SessionImpl.java:1508)
at org.hibernate.query.internal.AbstractProducedQuery.doList(AbstractProducedQuery.java:1537)
at org.hibernate.query.internal.AbstractProducedQuery.list(AbstractProducedQuery.java:1505)
at org.hibernate.query.Query.getResultList(Query.java:135)
at org.hibernate.query.criteria.internal.compile.CriteriaQueryTypeQueryAdapter.getResultList(CriteriaQueryTypeQueryAdapter.java:74)
at org.springframework.data.jpa.repository.support.SimpleJpaRepository.findAll(SimpleJpaRepository.java:377)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.data.repository.core.support.RepositoryComposition$RepositoryFragments.invoke(RepositoryComposition.java:359)
at org.springframework.data.repository.core.support.RepositoryComposition.invoke(RepositoryComposition.java:200)
at org.springframework.data.repository.core.support.RepositoryFactorySupport$ImplementationMethodExecutionInterceptor.invoke(RepositoryFactorySupport.java:644)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
at org.springframework.data.repository.core.support.RepositoryFactorySupport$QueryExecutorMethodInterceptor.doInvoke(RepositoryFactorySupport.java:608)
at org.springframework.data.repository.core.support.RepositoryFactorySupport$QueryExecutorMethodInterceptor.lambda$invoke$3(RepositoryFactorySupport.java:595)
at org.springframework.data.repository.core.support.RepositoryFactorySupport$QueryExecutorMethodInterceptor.invoke(RepositoryFactorySupport.java:595)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
at org.springframework.data.projection.DefaultMethodInvokingMethodInterceptor.invoke(DefaultMethodInvokingMethodInterceptor.java:59)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:294)
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:98)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
at org.springframework.dao.support.PersistenceExceptionTranslationInterceptor.invoke(PersistenceExceptionTranslationInterceptor.java:139)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
at org.springframework.data.jpa.repository.support.CrudMethodMetadataPostProcessor$CrudMethodMetadataPopulatingMethodInterceptor.invoke(CrudMethodMetadataPostProcessor.java:135)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:93)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
at org.springframework.data.repository.core.support.SurroundingTransactionDetectorMethodInterceptor.invoke(SurroundingTransactionDetectorMethodInterceptor.java:61)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:212)
at com.sun.proxy.$Proxy131.findAll(Unknown Source)
解析不了hibernate生成的sql语句 这个应该怎么处理啊
select systempara0_.id as id1_19_, systempara0_.enabled as enabled2_19_, systempara0_.version as version3_19_,systempara0_.module as module4_19_,systempara0_.name as name5_19_, systempara0_.value
as value6_19_,systempara0_.value2 as value7_19_, systempara0_.value3 as value8_19_,systempara0_.value4 as value9_19_, systempara0_.value5 as value10_19_ from t_system_parameter systempara0_
where systempara0_.enabled=1 and systempara0_.module=? and systempara0_.name=?
365980 [http-nio-9092-exec-10] WARN org.hibernate.engine.jdbc.spi.SqlExceptionHelper - SQL Error: -674, SQLState: IX000
365981 [http-nio-9092-exec-10] ERROR org.hibernate.engine.jdbc.spi.SqlExceptionHelper - 不能解析例行程序 (equal)。
517488 [HikariPool-1 housekeeper] WARN com.zaxxer.hikari.pool.HikariPool - HikariPool-1 - Thread starvation or clock leap detected (housekeeper delta=2m59s770ms723µs700ns).
五月 08, 2024 10:34:25 上午 org.apache.catalina.core.StandardWrapperValve invoke
严重: Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is org.springframework.orm.jpa.JpaSystemException: could not prepare statement; nested exception is org.hibernate.exception.GenericJDBCException: could not prepare statement] with root cause
java.sql.SQLException
at com.gbasedbt.util.IfxErrMsg.getSQLException(IfxErrMsg.java:409)
at com.gbasedbt.jdbc.IfxSqli.D(IfxSqli.java:3861)
at com.gbasedbt.jdbc.IfxSqli.dispatchMsg(IfxSqli.java:2746)
at com.gbasedbt.jdbc.IfxSqli.receiveMessage(IfxSqli.java:2671)
at com.gbasedbt.jdbc.IfxSqli.executePrepare(IfxSqli.java:1292)
at com.gbasedbt.jdbc.IfxPreparedStatement.f(IfxPreparedStatement.java:490)
at com.gbasedbt.jdbc.IfxPreparedStatement.a(IfxPreparedStatement.java:471)
at com.gbasedbt.jdbc.IfxPreparedStatement.(IfxPreparedStatement.java:273)
at com.gbasedbt.jdbc.IfxSqliConnect.h(IfxSqliConnect.java:6348)
at com.gbasedbt.jdbc.IfxSqliConnect.prepareStatement(IfxSqliConnect.java:2552)
at com.zaxxer.hikari.pool.ProxyConnection.prepareStatement(ProxyConnection.java:311)
at com.zaxxer.hikari.pool.HikariProxyConnection.prepareStatement(HikariProxyConnection.java)
at org.hibernate.engine.jdbc.internal.StatementPreparerImpl$5.doPrepare(StatementPreparerImpl.java:146)
at org.hibernate.engine.jdbc.internal.StatementPreparerImpl$StatementPreparationTemplate.prepareStatement(StatementPreparerImpl.java:172)
at org.hibernate.engine.jdbc.internal.StatementPreparerImpl.prepareQueryStatement(StatementPreparerImpl.java:148)
at org.hibernate.loader.Loader.prepareQueryStatement(Loader.java:1984)
at org.hibernate.loader.Loader.executeQueryStatement(Loader.java:1914)
at org.hibernate.loader.Loader.executeQueryStatement(Loader.java:1892)
at org.hibernate.loader.Loader.doQuery(Loader.java:937)
at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:340)
at org.hibernate.loader.Loader.doList(Loader.java:2689)
at org.hibernate.loader.Loader.doList(Loader.java:2672)
at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2506)
at org.hibernate.loader.Loader.list(Loader.java:2501)
at org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:504)
at org.hibernate.hql.internal.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:395)
at org.hibernate.engine.query.spi.HQLQueryPlan.performList(HQLQueryPlan.java:220)
at org.hibernate.internal.SessionImpl.list(SessionImpl.java:1508)
at org.hibernate.query.internal.AbstractProducedQuery.doList(AbstractProducedQuery.java:1537)
at org.hibernate.query.internal.AbstractProducedQuery.list(AbstractProducedQuery.java:1505)
at org.hibernate.query.Query.getResultList(Query.java:135)
at org.hibernate.query.criteria.internal.compile.CriteriaQueryTypeQueryAdapter.getResultList(CriteriaQueryTypeQueryAdapter.java:74)
at org.springframework.data.jpa.repository.support.SimpleJpaRepository.findAll(SimpleJpaRepository.java:377)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.data.repository.core.support.RepositoryComposition$RepositoryFragments.invoke(RepositoryComposition.java:359)
at org.springframework.data.repository.core.support.RepositoryComposition.invoke(RepositoryComposition.java:200)
at org.springframework.data.repository.core.support.RepositoryFactorySupport$ImplementationMethodExecutionInterceptor.invoke(RepositoryFactorySupport.java:644)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
at org.springframework.data.repository.core.support.RepositoryFactorySupport$QueryExecutorMethodInterceptor.doInvoke(RepositoryFactorySupport.java:608)
at org.springframework.data.repository.core.support.RepositoryFactorySupport$QueryExecutorMethodInterceptor.lambda$invoke$3(RepositoryFactorySupport.java:595)
at org.springframework.data.repository.core.support.RepositoryFactorySupport$QueryExecutorMethodInterceptor.invoke(RepositoryFactorySupport.java:595)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
at org.springframework.data.projection.DefaultMethodInvokingMethodInterceptor.invoke(DefaultMethodInvokingMethodInterceptor.java:59)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:294)
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:98)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
at org.springframework.dao.support.PersistenceExceptionTranslationInterceptor.invoke(PersistenceExceptionTranslationInterceptor.java:139)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
at org.springframework.data.jpa.repository.support.CrudMethodMetadataPostProcessor$CrudMethodMetadataPopulatingMethodInterceptor.invoke(CrudMethodMetadataPostProcessor.java:135)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:93)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
at org.springframework.data.repository.core.support.SurroundingTransactionDetectorMethodInterceptor.invoke(SurroundingTransactionDetectorMethodInterceptor.java:61)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:212)
at com.sun.proxy.$Proxy131.findAll(Unknown Source)
解析不了hibernate生成的sql语句 这个应该怎么处理啊
liaosnet发表于 2年前
@GBase用户13294:365980 [http-nio-9092-exec-10] WARN org.hibernate.engine.jdbc.spi.SqlExceptionHelper - SQL Error: -674, SQLState: IX000
365981 [http-nio-9092-exec-10] ERROR org.hibernate.engine.jdbc.spi.SqlExceptionHelper - 不能解析例行程序 (equal)。
这个错误是说,你的语句中的 = 操作没法处理(应该是类型不匹配),涉及到的三个字段 systempara0_.enabled=1 and systempara0_.module=? and systempara0_.name=? 分别是什么类型的?
猜测 enabled是boolean类型,这个在GBase这边不是1或者0,而是't'或者'f';
365981 [http-nio-9092-exec-10] ERROR org.hibernate.engine.jdbc.spi.SqlExceptionHelper - 不能解析例行程序 (equal)。
这个错误是说,你的语句中的 = 操作没法处理(应该是类型不匹配),涉及到的三个字段 systempara0_.enabled=1 and systempara0_.module=? and systempara0_.name=? 分别是什么类型的?
猜测 enabled是boolean类型,这个在GBase这边不是1或者0,而是't'或者'f';
GBase用户13294发表于 2年前
@liaosnet:修改字段数据类型的sql语句是什么呀
liaosnet发表于 2年前
@GBase用户13294:alter table TABNAME modify (COLNAME COLTYPENAME);
参考:https://www.gbase.cn/download/gbase-8s-1?category=DOCUMENT
里的SQL指南:语法 文档。
参考:https://www.gbase.cn/download/gbase-8s-1?category=DOCUMENT
里的SQL指南:语法 文档。
最佳回答
路路路发表于 9个月前
有问题欢迎再发帖
崔哥发表于 7个月前
试说途中景,方知别后心。行人日暮少,风雪乱山深。
热门帖子
- 12025-12-01浏览数:182763
- 22023-05-09浏览数:25057
- 42023-09-25浏览数:18525
- 52020-05-11浏览数:17528
语句没什么问题。