Jdbc problème d'insertion

eric2048 Messages postés 6 Date d'inscription dimanche 27 décembre 2009 Statut Membre Dernière intervention 11 janvier 2010 - 6 janv. 2010 à 01:05
eric2048 Messages postés 6 Date d'inscription dimanche 27 décembre 2009 Statut Membre Dernière intervention 11 janvier 2010 - 11 janv. 2010 à 23:26
Bonjour,

Je suis entrain d'écrire une classe java permettant de créer une personne avec un nom,un prénom et un salaire,cependant je rencontre un petit problème.
En fait,j'aimerais que lors de l'appel à mon constructeur,la personne soit crée et qu'elle soit directement insérée dans une base,c'est à dire si je crée ma personne avec les paramètres nom,prénom et salaire,dans ma table sur oracle(déjà crée,ici la table test) soit insérée.
Cependant,si la personne existe déjà,le constructeur ne doit pas l'insérer à nouveau,mais renvoyer cette ligne.
Est ce quelqu'un pourrait m'éclairer sur la façon dont il faut procéder,j'ai écris un code qui permet d'insérer,mais il y a des doublons.

Si quelqu'un pourrait m'aider ça serait vraiment super sympa.

public class Personne{
private String nom;
private String prenom;
private int salaire;
....
accesseurs
...

public Personne(String n,String p,int s)throws SQLException{
nom=n;
prenom=p;
salaire=s;
try {
/*toutes les lignes me permettant de me connecter à la base oracle,qui fonctionnent (tester déjà sur d'autres fonctions */

int rs;
Statement stmt=con.createStatement();


rs=stmt.executeUpdate("insert into test(nom,prenom,salaire)values( "+"'"+nom+"'"+","+"'"+prenom+"'"+","+"'"+salaire+"'"+")");


}


catch(Exception e ){
System.out.println(e.toString());
}


}

2 réponses

cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
6 janv. 2010 à 08:53
Salut,

Soit tu le gère au niveau d'oracle en faisant un triger qui, sur le insert, va tester si la ligne existe déjà, et si c'est le cas, modifie à la volée ton insert en commande update, soit tu le fais en java : tu fais d'abord un select, s'il te renvoie rien, tu fais un insert, si il te renvoie quelque chose, tu fais un update.
______________________________________
DarK Sidious
0
eric2048 Messages postés 6 Date d'inscription dimanche 27 décembre 2009 Statut Membre Dernière intervention 11 janvier 2010
11 janv. 2010 à 23:26
je vais essayer ça merci
0
Rejoignez-nous