【发布时间】:2021-03-18 08:46:18
【问题描述】:
当我尝试按参数选择表时:
@Repository
public interface IParametersRepository extends JpaRepository<Parameters, Long> {
@Query(value = "SELECT param_def_id FROM :param", nativeQuery = true)
Optional<List<String>> GetParameterDefIDs(@Param("param") String param);
}
我收到无效的表名错误:
Hibernate: SELECT param_def_id FROM ?
2021-03-18 09:12:20.734 TRACE 980 --- [nio-8080-exec-2] o.h.type.descriptor.sql.BasicBinder :
binding parameter [1] as [VARCHAR] - [PARAM_APP]
2021-03-18 09:12:20.787 WARN 980 --- [nio-8080-exec-2] o.h.engine.jdbc.spi.SqlExceptionHelper :
SQL Error: 903, SQLState: 42000
2021-03-18 09:12:20.787 ERROR 980 --- [nio-8080-exec-2] o.h.engine.jdbc.spi.SqlExceptionHelper :
ORA-00903: invalid table name
但是当手动编写查询时,我会从 db 获取所有数据。
@Query(value = "SELECT param_def_id FROM PARAM_APP", nativeQuery = true)
Optional<List<String>> GetParameterDefIDs(@Param("param") String param);
这是我的要求:localhost:8080/api/app/parameters?param=PARAM_APP
【问题讨论】:
-
哦,好的。我想我会和实体经理一起做。谢谢