Java : Echec d'insertion dans une BD Oracle

Rachid -  
peppena Messages postés 143 Date d'inscription   Statut Membre Dernière intervention   -
Salut les experts,

J'espère que vous me trouverez une solution à mon proplème décrit ci-dessous:

- j'ai écrit un petit programme Java permettant de se connecter à une base de données Oracle. La connection est bien reussite. Concernant l'insertion d'un nouvel enregistrement dans une table de ma base de données, deux cas de figures se présentent:
1- l'insertion passe correctement quand j'utilise l'instruction suivante:
N=requete.executeUpdate ("insert into local " + " values('test8',20,'test')");
ici j'ai utilisé des valeurs.

2- l'insertion ne passe pas et une exception est générée quand j'utilise l'instruction suivante:

N=requete.executeUpdate ("insert into local "+" values(nom_batimentS, num_bureauS,descriptionS)");
oû nom_batimentS, num_bureauS et descriptionS sont des noms de variables.
Merci d'avance;
A voir également:

3 réponses

peppena Messages postés 143 Date d'inscription   Statut Membre Dernière intervention   5
 
bonjour c normal
il faut écrire

N=requete.executeUpdate ("insert into local "+" values("+nom_batimentS+","+ num_bureauS+","+descriptionS+)");

ainsi il prendra les valeurs que contiennent les variables

j'espere que c bien clair
0
Rachid
 
salut les experts ,
La reponse que vous m'avez envoyé ne marche pas, car les valeurs des variables concernés sont récupérer à partir d'un formulaire d'une interface .Alors quand on saisie dans ce formulaire des valeurs, celles ci ne passent pas vers la base par la solution proposée.
voici la partie de recupération des valeurs que nous avons fait :
/************/
String nom_batimentS = jTextField1.getText();
int num_bureauS = Integer.parseInt(jTextField2.getText());
String descriptionS = jTextField3.getText();
System.out.println(nom_batimentS);
System.out.println(num_bureauS);
System.out.println(descriptionS );
N=requete.executeUpdate ("insert into local "+" values("+nom_batimentS+","+
num_bureauS+","+descriptionS+")");
/************/
merci d'avance.
0
peppena Messages postés 143 Date d'inscription   Statut Membre Dernière intervention   5
 
peut etre tes champs du formulaire peuvent dans ceratins cas etre vide , donc tu dois initialiser avant tes variables.


la requete 'N=requete.executeUpdate ... est correcte

bon travail
0