这里是我的代码,createStoredProcedureQuery在eclipse下面有红线,并没有解决,我尝试了很多方法仍然无法得到错误。
private static EntityManagerFactory factory;
public static void main(String[] args) {
factory = Persistence.createEntityManagerFactory("mypersistenceUnit");
EntityManager em = factory.createEntityManager();
// Create call stored procedure
em.getTransaction().begin();
StoredProcedureQuery storedProcedure = em.**createStoredProcedureQuery**("getCode");
// set parameters
storedProcedure.registerStoredProcedureParameter("name", String.class, ParameterMode.IN);
storedProcedure.registerStoredProcedureParameter("num", String.class, ParameterMode.IN);
storedProcedure.registerStoredProcedureParameter("code", String.class, ParameterMode.OUT);
// execute SP
storedProcedure.execute();
// get result
String code= (String)storedProcedure.getOutputParameterValue("code");
System.out.println("code is: " + code);
em.getTransaction().commit();
em.close();
}
答案 0 :(得分:1)
你需要声明并设置参数:
if ($uresult->num_rows >0) {
while($urow = $uresult->fetch_assoc()) {
$rresult = mysqli_query($con,"SELECT *
FROM allid
WHERE postid='$oldid'
AND spaceid='$newid'");
mysqli_query($con,"DELETE FROM allid
WHERE postid AND spaceid IS NULL");
$lrow = mysqli_fetch_assoc($rresult);
$tem = $lrow['postid'];
$ujson = json_encode($tem);
echo $ujson;
}
} else {
}
- 请记住,商店过程中的参数名称必须与声明的
相同答案 1 :(得分:0)
JPA 2.1提供了该方法。如果您没有在CLASSPATH中包含JPA API 2.1 jar(而是使用JPA API 2.0),那么您将得到它。修复您的JPA API jar版本(删除JPA API 2.0并包含JPA API 2.1)