Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用Hibernate在数据库中搜索整数_Java_Mysql_Sql_Hibernate_Jpql - Fatal编程技术网

Java 使用Hibernate在数据库中搜索整数

Java 使用Hibernate在数据库中搜索整数,java,mysql,sql,hibernate,jpql,Java,Mysql,Sql,Hibernate,Jpql,我想用like在MySQL数据库中搜索一个整数。我正在将jdk-12.0.2与Hibernate一起使用 如果不是整数,我可以使用以下代码: :what=“Help” (ArrayList)entityManager.createQuery(“从定义类似于:what”,Number.class的数字开始)。setParameter(“what”,what+“%”)。getResultList(); 这非常有效,并提供了我的数字数组列表。 如果我只使用SQL脚本,我可以使用: SELECT*FR

我想用like在MySQL数据库中搜索一个整数。我正在将jdk-12.0.2与Hibernate一起使用

如果不是整数,我可以使用以下代码:

:what=“Help”
(ArrayList)entityManager.createQuery(“从定义类似于:what”,Number.class的数字开始)。setParameter(“what”,what+“%”)。getResultList();
这非常有效,并提供了我的数字数组列表。

如果我只使用SQL脚本,我可以使用:

SELECT*FROM juna where CAST(id为CHAR),如'1%';
但是如果我使用
CAST(id为CHAR)
替换
定义
,则会出现以下异常:

Exception in thread "main" java.lang.IllegalArgumentException: org.hibernate.QueryException: Could not resolve requested type for CAST : CHAR
有人能帮我解决这个问题吗?
(也欢迎您提出改进我的工作代码的建议)

cast
不是jpql的一部分,您在调用
EntityManager\createQuery
时使用它。您应该使用
EntityManager#createNativeQuery
来代替普通sql。看