Today
-
Yesterday
-
Total
-

ABOUT ME

-

  • JUnit | JPQL, SQLSyntaxErrorException No such column...
    ▼ Backend/JUnit 2021. 10. 15. 14:35
    반응형

    Caused by: java.sql.SQLSyntaxErrorException: No such column: id, use_yn...

    원인)

    조회하려는 컬럼은 2개인데 엔티티로 작성된 컬럼은 2개이상 일 때 메서드의 리턴 타입이 List <엔티티> 로 되어있으면 엔티티에 정의된 모든 럼을 요구하는데 찾지 못할 때 발생

    해결)

    엔티티에 속한 컬럼을 다 출력해주거나, 리턴 타입을 List <String> 으로 변경한다.

     

    Menu.java

     

    @NoArgsConstructor
    @Getter
    @Entity
    public class Menu {
    	@Id
        	@GeneratedValue
    	private Long id;
    	private String menuGb;
    	private String menuNm;
    	private String useYn;
    }

     

     

    MenuRepository.java

    public List<Menu> selectMenu(); 
     public List<String> selectMenu();

     

    public interface MenuRepository extends JpaRepository<Menu, Long> {
    	@Query(value="select menu_gn,menu_nm from menu", nativeQuery=true)
    	public List<Menu> selectMenu();
    }

     

     

    JUnit Test Class

     

    @SpringBootTest
    class MenuRepositoryTest {
    	
    	@Autowired
    	private MenuRepository menuRepository;
    
    	@Test
    	void testGetMenuList() {
    		menuRepository.selectMenu();
    	}
    }
    반응형

    '▼ Backend > JUnit' 카테고리의 다른 글

    JUnit | JPA 테스트 하기  (0) 2021.02.16
    JUnit | Eclipse에서 JUnit 테스트 하기  (0) 2021.02.12

    댓글

Designed by Tistory.