java - Spring @Query 删除引号

标签 java mysql spring hibernate spring-boot


我想在 spring 查询中使用表名, 但是当我执行它时,我收到以下错误:

"could not extract ResultSet; SQL [n/a]; nested exception is
 org.hibernate.exception.SQLGrammarException: could not extract ResultSet"


因为当 param 是 String param 时 spring 自动添加引号 "..

@Query(value = "desc :name", nativeQuery = true)
List<RepositoryColumn> getColumnFromRepository(@Param("name") String name);

在其他情况下,我想要 "desc table_name" 而不是 "desc 'table_Name'"

有什么想法吗?

最佳答案

 SELECT *
 FROM information_schema.columns
 WHERE 
     table_name = :name 

尝试同样的另一种方式。您可以选择必要的列,而不是 *

关于java - Spring @Query 删除引号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45375370/

相关文章:

php - 根据php中的选择框值更新表格

java - 如何实例化通用 spring bean?

spring - 使用 Spring roo 优于 play 框架的优势(如果我们使用 Spring 框架)?

database - Hibernate EntityManager persist() 和数据库往返计数

java - Eclipse - 调试器不会在断点处停止

java - 首次运行时 Android 静态类为 null

java - 优化 Spring-Data JPA 查询

php - 连接五个表时如何避免重复

java - 为什么 Thread.stop() 如此危险

mysql - 是否可以通过查看执行计划来了解为什么我的查询如此缓慢