반응형
java.sql.SQL 예외: ORA-03115: 지원되지 않는 네트워크 데이터 유형 또는 표현
Oracle 11g 데이터베이스를 사용하고 있습니다.제가 db에서 데이터에 액세스하려고 했을 때 java.sql 오류가 표시되었습니다.SQL 예외: ORA-03115: 지원되지 않는 네트워크 데이터 형식 또는 표현입니다.나는 이 오류가 무슨 뜻인지 이해하지 못합니다.
내 코드는:
String uname,pass;
ResultSet rs = null;
response.setContentType("text/html");
PrintWriter out=response.getWriter();
try
{
uname=request.getParameter("uname");
pass=request.getParameter("pass");
Connection con=prepareConnection();
String Query="select uname from passmanager where pass=?";
PreparedStatement ps=con.prepareStatement(Query);
ps.setString(1,pass);
rs=ps.executeQuery(Query);
if (rs.next() && uname.equalsIgnoreCase(rs.getString("uname")) || uname.equalsIgnoreCase(rs.getString("email"))) {
HttpSession session = request.getSession(true);
session.setAttribute("uname", rs.getString(1));
ServletContext context = getServletContext();
RequestDispatcher dispatcher = context
.getRequestDispatcher("/profile");
dispatcher.forward(request, response);
}
이 문제를 해결할 수 있도록 도와주세요.
다음 대신:
rs = ps.executeQuery(Query);
다음을 실행해야 합니다.
rs = ps.executeQuery();
그렇지 않으면 새 SQL 문을 할당하기 때문에 문 준비가 취소되고 모든 매개 변수가 손실됩니다.
이 오류는 결과 집합에 없는 이름(이 경우 rs.getString("unname")으로 필드를 가져오려고 할 때 나타납니다.
그리고 igr가 말했듯이, 당신은 이메일 필드(rs.getString("email")를 얻으려고 하는데 그것은 쿼리에 없으므로 이것은 당신의 오류입니다.
문자열 끝에 공백이 있는 필드(rs.getString("unname") 대신 rs.getString("unname"))을 가져오려고 할 때 응용 프로그램에서 동일한 오류가 발생하여 이 대화를 찾았습니다.
그리고 쿼리에서 얻은 필드의 정확한 이름을 사용하여 수정합니다.
도움이 되었으면 좋겠습니다! ;) ;)
전자 메일 열 추가
select uname, email from passmanager where pass=?
언급URL : https://stackoverflow.com/questions/14302577/java-sql-sqlexception-ora-03115-unsupported-network-datatype-or-representation
반응형
'programing' 카테고리의 다른 글
MySQL 인덱싱은 PHP를 통해 속도 효과가 없지만 PHP MyAdmin에서는 효과가 있습니다. (0) | 2023.06.30 |
---|---|
ggplot2 선 그림에 범례 추가 (0) | 2023.06.30 |
Mockito는 @AutoWired Spring-Data Repository의 Spy를 생성할 수 없습니다. (0) | 2023.06.25 |
'Gravity Forms' 입력 버튼을 클릭할 때 jquery를 트리거합니다. (0) | 2023.06.25 |
Nux.js Vuex 모듈이 예상대로 작동하지 않음 (0) | 2023.06.25 |