SQL 서버에 연결하는 드라이버로 JTDS를 사용하고 있습니다.와일드 카드를 사용하여 준비된 문이 특정 행을 반환하지 않지만 쿼리가 모든 행을 반환합니까?
이SELECT EmpID,FirstName,LastName,CompanyName,DepartmentName,JobTitle,HireDate FROM Employees where UPPER(FirstName) LIKE 'KEVIN%'
그것은 SQL Server에서 2 개 행을 반환
다음은 나에게 문제를주고 쿼리입니다. 하나는 대문자에 'KEVIN'이 있고 다른 하나에는 'Kevin'이 있습니다. 와일드 카드를 사용하여 두 결과를 모두 얻었는지 확인했습니다. 내 EmployeeDAO 클래스에서 다음을 사용하고 있습니다. ps = con.prepareStatement("SELECT EmpID,FirstName,LastName,CompanyName,"
+ "DepartmentName,JobTitle,HireDate FROM Employees WHERE UPPER(FirstName) LIKE ?");
ps.setString(1, FirstName + "%");
rs = ps.executeQuery();
그리고 나서 물론 KEVIN을 내 메인에 넣습니다. 'Kevin'행 하나만 반환합니다.
어떻게 수정하여 모든 행을 반환합니까?
'ResultSet'에서 어떻게 행을 수집하고 있습니까? 문제가있을 가능성이 큽니다. – BalusC
는 시도 유무 : SELECT다는 EmpID, 이름, 성, 회사 명,에 DepartmentName, JobTitle, HIREDATE 종업원 UPPER (FIRSTNAME) UPPER LIKE ('케빈 %') – markus
'동안 (rs.next()) {V FROM .add (새 Employee (rs.getInt ("EmpID"), rs.getString ("FirstName"), rs.getString ("LastName"), rs.getString ("CompanyName"), rs.getString ("DepartmentName") , rs.getString ("JobTitle"), rs.getString ("HireDate"))); }'RS는 결과 집합이고 v는 벡터입니다 – Nimchip