반응형
Java JDBC의 숫자 오버플로 예외
이 쿼리는 숫자 오버플로 예외를 반환합니다.1부터 14까지의 값은 쉽게 검색되지만 더 큰 값(15부터)은 검색할 수 없습니다.
Oracle XE를 사용하고 있습니다.이거 어떻게 고쳐요?
내 코드는 다음과 같습니다.
pst=con.prepareStatement("Select * from student where sut_id like 'Kul7Dub514'");
rs=pst.executeQuery();
while(rs.next)
{
smob.setText(Integer.toString(rs.getInt(15)));
fmob.setText(Integer.toString(rs.getInt(16)));
mmob.setText(Integer.toString(rs.getInt(17)));
col.setText(rs.getString(18));
address.setText(rs.getString(19));
}
학생 테이블:
create table student ( stu_id varchar(10) primary key, stu_image Blob,
stu_first_name varchar(20) not null,
stu_middle_name varchar(20) not null,
stu_last_name varchar(20) not null,
fat_first_name varchar(20) not null,
fat_middle_name varchar(20),
fat_last_name varchar(20) not null,
mot_first_name varchar(20),
mot_middle_name varchar(20),
mot_last_name varchar(20),
dob Date,
gender varchar(6),
ac_yr varchar(10),
mobno number(11),
fatmob number(11),
motmob number(11),
edu_center varchar(50),
address varchar(150) )
DB의 데이터는 다음과 같습니다.Number(11)
정수에 맞지 않습니다.
오래 사용해 보세요.rs.getLong(15)
;
대부분의 경우 해당 "숫자"로 수학적 연산을 수행하지 않습니다.숫자로 취급하지 않고 식별자로 취급하기 때문입니다.Java 유형을 사용해야 합니다.BigDecimal
Oracle 데이터 유형과 가장 유사한 유형입니다.NUMBER
또는 jdbc 드라이버에서 제공하는 데이터 유형을 사용할 수도 있습니다.oracle.sql.NUMBER
.
언급URL : https://stackoverflow.com/questions/23404294/numeric-overflow-exception-in-java-jdbc
반응형
'bestsource' 카테고리의 다른 글
개발을 위한 장치 설정(권한 없음) (0) | 2023.08.17 |
---|---|
MySQL을 상업적 환경에서 사용하는 것이 합법입니까? (0) | 2023.08.17 |
HTML5 테이블에서 셀 패딩, 셀 간격, 유효성 검사 및 정렬을 대체하는 것은 무엇입니까? (0) | 2023.08.17 |
R 마크다운, SQL 코드 청크가 구문 오류를 생성합니다. (0) | 2023.08.12 |
스크롤 보기를 특정 편집 텍스트로 프로그래밍 방식으로 스크롤하는 방법이 있습니까? (0) | 2023.08.12 |