JSP

ORA-0093: "SQL command not properly ended"

양상추상츄 2023. 1. 10. 22:33

console에 이런게 찍혀서 블로그를 찾아보니 쿼리가 잘못되었을때 나오는 오류라고 하여 아무리 봐도 문제가 없는듯하였는데 쿼리 문제가 맞았다. 하도 안되서 다시 싹 지우고 하니까 된다.

 

DAO에서 게시물 목록을 조회, 안에 게시물 조회를 위한 쿼리가 있음

	// 검색 조건에 맞는 게시물 목록을 반환합니다.
	public List<BoardDTO> selectList(Map<String, Object> map) {
		
		List<BoardDTO> bbs = new Vector<BoardDTO>(); // 게시물 목록 조회 결과를 담을 변수
		// Vector - ArrayList와 비슷함 스레드 환경에서의 안정성은 높지만 ArrayList와 비교하여 추가, 검색, 삭제 성능 떨어짐
		
        String query = "SELECT * FROM board "; 
        if (map.get("searchWord") != null) {
            query += " WHERE " + map.get("searchField") + " "
                   + " LIKE '%" + map.get("searchWord") + "%' ";
        }
        query += " ORDER BY num DESC "; 
		
		try {
			stmt = con.createStatement(); // 쿼리 생성
			rs = stmt.executeQuery(query); // 실행, 모든 조회결과가 rs에 담긴다.
			
			while (rs.next()) {// 조회 결과가 없을때까지 반복한다.
				
				BoardDTO dto = new BoardDTO();
				
				// 쿼리에서 결과값을 숫자로 넘겼는지 문자로 넘겼는지 날짜로 넘겼는지에 따라서 get형태 결정
				dto.setNum(rs.getString("num"));
				dto.setTitle(rs.getString("title"));
				dto.setContent(rs.getString("content"));
				dto.setPostdate(rs.getDate("postdate"));
				dto.setId(rs.getString("id"));
				dto.setVisitcount(rs.getString("visitcount"));
				
				bbs.add(dto); // 결과목록에 저장
			}
		}
		catch (Exception e){
			System.out.println("게시물 조회 중 예외 발생");
			e.printStackTrace();
		}
		
		return bbs;
	}

'JSP' 카테고리의 다른 글

HTTP 상태 404 - 찾을 수 없음  (0) 2023.01.01