Rechercher : dans
Par :

Insertion en JAVA un float dans une BD ORACLE

Dernière réponse le 12 avr 2004 à 09:50:25 Silivia, le 11 avr 2004 à 01:55:37 
 Signaler ce message aux modérateurs

Salut les amis, je récuprère en java une valeur de type Float d'une base de données ORACLE comme le suivant:
float Pri = Selct.getFloat(4);

Mon problème ce quand j'insère de nouveau la valeur Pri dans la base de donnés ORACLE me donne l'erruer suivant: org.apache.jasper.JasperException: ORA-01722: invalid number.
Je ne sais pas pourquoi mais pour les autres champs il n'y a pas de problème. Le voila mon bout de code:

<%@ page language="Java" import="java.sql.*"%>
<%@ include file="Connexion.jsp"%>
<%
String NumCommande = request.getParameter("NumCommande");

String SQL = "SELECT * FROM PRODUIT where NUMPRODUIT='"+NumCommande+"'" ;
Statement unSQL = conn.createStatement();
ResultSet Selct = unSQL.executeQuery(SQL);


while (Selct.next ()){

String Num = Selct.getString(1);
String Type = Selct.getString(2);
String Marque = Selct.getString(3);
float Pri = Selct.getFloat(4);

int xy = Selct.getInt(5);

String SQLUpdate= "UPDATE PRODUIT SET QUANTITEDISP= QUANTITEDISP+1 WHERE NUMPRODUIT = '"+Num+"' ";
ResultSet Upda = unSQL.executeQuery(SQLUpdate);

String SQLInsert= "INSERT INTO COMMANDE VALUES ('"+Num+"', '"+Type+"', '"+Marque+"', '"+Pri+"' , '"+xy+"')";
ResultSet Inser = unSQL.executeQuery(SQLInsert);

Inser.close();
Upda.close();
};
Selct.close();
unSQL.close();

// response.sendRedirect("http://www.labunix.uqam.ca:8181/~hh691496/JSP/ListeProduits.jsp");
%>

Merci beaucoup pour votre aide.
Silvia.

Meilleures réponses pour « Insertion en JAVA un float dans une BD ORACLE » dans :
Java - Les types de données VoirLes primitives Java est un langage orienté objet, c'est-à-dire que les éléments manipulés sont des classes, ou plus exactement des objets, c'est-à-dire des instances de classes. Toutefois ces objets contiennent des données possèdant un type (et...
Java: les variables VoirLe concept de variable Une variable est un objet repéré par son nom, pouvant contenir des données, qui pourront être modifiées lors de l'exécution du programme. Les variables en langage Java sont typées, c'est-à-dire que les données contenues dans...

1

jtrain, le 11 avr 2004 à 23:49:49

Salut,

J'ai à peu près le même prb que toi. Pour moi, c'est l'insertion d'une date qui pose prb:

// Date du jour
Calendar c = Calendar.getInstance();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
java.sql.Date date = sdf.format(c.getTime());

System.out.println("la date est" +date);

//Insertion de l'information dans la base
query = "INSERT INTO information VALUES('','"+traitementChaine(InfoGroupe)+"','"+date+"')";
System.out.println(query);

En fait le premier System.out affiche la bonne date, le second qui affiche la query, on retrouve rien à la place de date....!!!!

SOS,

Répondre à jtrain

2

 naima0104, le 12 avr 2004 à 09:50:25
  • +1

Salut
et si tu ajoute à la date :
query = "INSERT INTO information VALUES('','"+traitementChaine(InfoGroupe)+"','"+"to_char("+date+","+"'YYYY-MM-DD')"+"')";

Répondre à naima0104