Dépassement numérique Exception en java JDBC
Cette requête retourne un dépassement numérique exception. Les valeurs de 1 à 14 sont récupérées facilement, mais de plus grandes valeurs (à partir de 15) ne peut pas être.
Je suis de l'utilisation d'ORACLE XE. Comment puis-je résoudre ce problème?
Voici mon code:
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));
}
De l'élève table:
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) )
qu'est-ce que les méta-données pour la table des étudiants.
OriginalL'auteur kdubey007 | 2014-05-01
Vous devez vous connecter pour publier un commentaire.
Que les données dans votre base de données est
Number(11)
, cela ne rentre pas dans un Entier.Essayer, une Longue et
rs.getLong(15)
;OriginalL'auteur Scary Wombat
Très probablement, vous n'effectuez aucune des opérations mathématiques avec des "numéros". Puisque vous ne les traitez pas comme des numéros, mais comme identifiants, vous devez utiliser Java de type
BigDecimal
. C'est un type avec qui est le plus semblable à l'Oracle de type de donnéesNUMBER
. Ou vous cal également utiliser le type de données fournies par les pilotes jdbcoracle.sql.NUMBER
.OriginalL'auteur ibre5041