복붙노트

[SQL] 예외 : SQLException 이름 잘못된 열 ...?

SQL

예외 : SQLException 이름 잘못된 열 ...?

나는 이클립스, 메이븐, 톰캣의 도움으로 자바 프로젝트 내에서 배포하고 JSP 파일이 있습니다. 서로 다른 작업을 실행하지만 나는,이 거의 동일한 몇 가지 다른 JSP 파일을 가지고있다. 내가 페이지로 이동하면 어쨌든, 나는이 준 :

org.apache.jasper.JasperException: An exception occurred processing JSP page /entertime2.jsp at line 106

103:    rsBug = psBug.executeQuery();
104:
105:    while(rsBug.next()) {
106:        Bug b = new Bug(rsBug);
107:        out.println("<option value='" + b.get(Bug.BUG_ID) + "'>" + b.get(Bug.TITLE) + "</option>");
108:    }
109:    rsBug.close();

root cause

javax.servlet.ServletException: java.sql.SQLException: Invalid column name ixPersonOpenedBy.

rsBug을 - - 버그 사용자 정의 결과 세트에 걸릴 수있는 클래스 및 수행 다음 작업 :

setValue(Bug.BUG_ID,rs.getString(Bug.BUG_ID));
setValue(Bug.PERSON_OPENED_BY,rs.getString(Bug.PERSON_OPENED_BY));
setValue(Bug.PERSON_ASSIGNED_TO,rs.getString(Bug.PERSON_ASSIGNED_TO));
setValue(Bug.TITLE, rs.getString(Bug.TITLE));
setValue(Bug.PROJECT_ID,rs.getString(Bug.PROJECT_ID));

BUG_ID, PERSON_OPENED_BY, PERSON_ASSIGNED_TO, 제목 및 PROJECT_ID는 버그 테이블에서 열 이름에 해당 데이터베이스에 저장하는 버그 클래스의 모든 선재는 곳. 이제 테이블의 ixPersonOpenedBy 열이있다,하지만 문제가 전에 나에게 주어진 적이 없어요. 그것이 내가 실행 여부를하려고 SQL 문을 아무 상관이 있는지 확실하지 않습니다,하지만 난 내 다른 JSP의 중 하나에 전에 동일한 구문을 사용했습니다 그것은 나에게 어떤 문제를 작성하지 않았습니다. 또한,이 오류는 프로젝트의 이전 배치에 진열되지 않았습니다. 나는 관련이없는 변수에 오타가 있고,이 고정되면,이 사람은 아무데도 밖으로을 팝업합니다.

내가 열 유효 "한다"를 알고있을 때이 오류가 주어질 왜 어쨌든, 캔 사람이 볼 수? 당신이 더 많은 JSP, 버그 클래스, 또는 데이터베이스 내의 버그 표 참조해야하는 경우, 바로 알려주세요; 어떤 도움에 감사드립니다.

편집 : 여기 내가 사용하고 두 SQL 문하지만 하나가 문제를 일으키는 있는지 확실하지 않습니다.

SELECT p.ixPerson, p.sFullName 
FROM Person p, jwTeamMembers t 
WHERE p.ixPerson = t.ixPerson 
ORDER BY p.sFullName ASC


SELECT b.ixBug, b.sTitle 
FROM Bug b, Person per, Project p, Area a, jwTime t, jwTeamMembers m, jwTeam jt, Status s, jwDivision d
WHERE per.ixPerson = t.ixPerson AND t.ixBug = b.ixBug AND b.ixProject = p.ixProject AND b.ixArea = a.ixArea
    AND per.ixPerson = m.ixPerson AND m.ixTeam = jt.ixTeam AND b.ixStatus = s.ixStatus AND a.ixDivision *= d.ixDivision
    AND (per.ixPerson = ?)
GROUP BY b.ixBug, b.sTitle
ORDER BY b.ixBug DESC

두 번째 문에서 매개 변수로 가득 :

psBug.setInt(1, Integer.valueOf(personId).intValue());

해결법

  1. ==============================

    1.언급 된 열은 SELECT에 의해 반환되지 않습니다.

    언급 된 열은 SELECT에 의해 반환되지 않습니다.

    그리고 실제로, 당신이 선택의 아무도는 열 것을 지정을 조회하지 않습니다. 그에 따라 수정. 예를 들면

    SELECT b.ixBug, b.sTitle, b.ixPersonOpenedBy
    
  2. from https://stackoverflow.com/questions/7392296/sqlexception-invalid-column-name by cc-by-sa and MIT license