>  Q&A  >  본문

SQL 저장 프로시저 호출 방법: CreateNativeQuery 사용

<p>내 SQL 저장 프로시저에는 두 개의 쿼리가 포함되어 있으며 Java 코드에서 저장 프로시저를 호출하고 싶습니다. 아래 코드를 시도했지만 저장 프로시저의 첫 번째 쿼리 결과 목록만 반환했습니다. </p> <pre class="brush:php;toolbar:false;">Query query = em.createNativeQuery("{call 바우처Redemption(?,?,?)}"); query.setParameter(1,logininWorkSpaceId); query.setParameter(2, startDate); query.setParameter(3, endDate); List<Object[]> 결과 = query.getResultList();</pre> <p>저장 프로시저는 다음과 같습니다.</p> <pre class="brush:php;toolbar:false;">CREATE PROCEDURE `cer`.`voucherRedemption`(IN 작업 공간 ID int(10), IN startDate VARCHAR(30), IN endDate VARCHAR(30)) 시작하다 w.ws_name을 wsName으로 선택하고, str_to_date(startDate, '%Y-%m-%d')를 startDate로, str_to_date(endDate, '%Y-%m-%d')를 endDate로 선택합니다. w.ws_id = 작업 공간 ID인 작업 공간 w에서; Money.*,money.paidAmount + Money.prepaidAmount - Money.clientCost,programs.programs를 선택합니다. 프로그램에서 END</pre></p>
P粉064448449P粉064448449415일 전576

모든 응답(1)나는 대답할 것이다

  • P粉124070451

    P粉1240704512023-09-02 11:48:11

    이렇게 사용하는 것이 좋습니다 EntityManager#createStoredProcedureQuery:

    으아악

    실제 결과를 얻기 위해 사용한 것이 아니라 프로세스를 수행했을 뿐입니다. 이것이 효과가 있다면 알려주세요.

    회신하다
    0
  • 취소회신하다