我希望实现以下功能, 使用堆栈:Spring-boot,Hibernate,MySQL
1)我有一个名为configuration的表,我有2列id,select_clause
2)我将查询存储在此配置表中
示例:从id = 999的配置中选择select_clause;
输出:SELECT * FROM user u where u.CREATE_DATE>'2019-03-25'
3)我有另一个称为用户的表,如何从用户存储库运行从点2)返回的查询,即SELECT * FROM user u where u.CREATE_DATE>'2019-03-25 '
我在下面尝试。
String query = configDTO.getSelectClause();
// query value is "SELECT * FROM user u where u.CREATE_DATE > '2019-03-25'"
UserDTO userDTO = userRoleRepository.getReportByCustom(query);
我在存储库中的本机查询是
@Query(value = ":query", nativeQuery=true)
public UserDTO getReportByCustom(@Param("query") String query);
我在说什么?
错误是 您的SQL语法有误;检查与您的MySQL服务器版本对应的手册以获取正确的语法,以在第1行的``SELECT * FROM user u where u.CREATE_DATE>'2019-03-25'''附近使用