IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JDBC Java Discussion :

saisir des données et les inserrer dans une base de donnée Mysql


Sujet :

JDBC Java

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 10
    Points : 7
    Points
    7
    Par défaut saisir des données et les inserrer dans une base de donnée Mysql
    Bonjour,
    j'ai commencé par lire certaines discussions mais je n'ai pas pu trouvé une réponse à mon problème.
    Je saisie des données pour les inserer dans la base mais le problème est que evec mon code c'est que la valeur 'Null' qui s'enregistre dans la base et je ne sais pas pour quoi. Quelqu'un a peut-etre une idee. J'ai vraiment besoin de votre aide.
    Je vous remercie d'avance. Voici mon code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
     
    	public void creer()
    	{				
    		Scanner sc = new Scanner(System.in);
    		System.out.println("Saississez votre nom : ");
    		nom = sc.next();
    		System.out.println("Saississez votre prenom : ");
    		prenom = sc.next();
    		System.out.println("Saississez votre adresse : ");
    		adresse = sc.next();
    		System.out.println("Saississez votre date de depart : ");
    		date_depart = sc.next();
    		System.out.println("Saississez votre date de retour : ");
    		date_retour = sc.next();
    		try
    		{			
    			st = connection.createStatement() ;
    			numero = compteur() + 1 ;
    			String  requete = "insert into reservation values(numero,nom,prenom,adresse,date_depart,date_retour)";
    			//String  requete = "insert into reservation values(1,'rosa','sam','ru','17/02/06', '12/06/06')";
    			st.executeUpdate(requete);
    			System.out.println ("Votre numero de reservation est est : " + numero);
    			this.fin_connexion();
    			System.out.println("");
    		}catch (Exception d)
    		{
    			System.out.println ("Problème de la requete" + d);		
    		}
    	}

  2. #2
    Membre chevronné
    Avatar de afrikha
    Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    1 600
    Détails du profil
    Informations personnelles :
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2005
    Messages : 1 600
    Points : 2 208
    Points
    2 208
    Par défaut
    Bonsoir,

    Quel est le type des colonnes : numero, nom, prenom, adresse, date_depart et date_retour ?

    @+


    Mes publications
    Lisez
    Les régles du forum
    Pensez au bouton

  3. #3
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 310
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 310
    Points : 9 522
    Points
    9 522
    Billets dans le blog
    1
    Par défaut
    Ca ne risque pas de fonctionner comme ça, tu construits ta requête d'insertion en mettant le nom des variables à la place de leur contenu...

    Il faudrait faire ceci...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
     
    ...
    PreparedStatement pstmt = null;
    try
    {
       /* Je suppose que les colonnes de db se nomment numero, nom, prenom, adresse, date_depart, date_retour, sinon, adapte...
        * Pour la connection, adapte aussi...
        */
       pstmt = connection.prepareStatement("insert into reservation(nom, prenom, adresse, date_depart, date_retour) values(?, ?, ?, ?, ?)
    pstmt.setString(1, nom);
    pstmt.setString(2, prenom);
    pstmt.setString(3, adresse);
    pstmt.setDate(4, date_depart);
    pstmt.setDate(5, date_retour);
    pstmt.execute();
     
    }
    catch (Exception e)
    {
    ...
    }
    finally
    {
       if ( pstmt != null ) pstmt.close();
    }
    ...
    A+
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 10
    Points : 7
    Points
    7
    Par défaut
    Bonjour,

    merci ça marche. Cependant j'ai un autre soucis, l'adresse je l'ai declaré en string mais quand je saisie l'adresse avec des espace (par exemple "2 rue de paris"), le programme plante. Il ya peut etre un autre moyen de faire.
    merci

  5. #5
    Membre chevronné
    Avatar de afrikha
    Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    1 600
    Détails du profil
    Informations personnelles :
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2005
    Messages : 1 600
    Points : 2 208
    Points
    2 208
    Par défaut
    Citation Envoyé par agno
    Quand je saisie l'adresse avec des espace (par exemple "2 rue de paris"), le programme plante.
    Bonsoir,

    Quelle est l'erreur obtenue ?

    @+


    Mes publications
    Lisez
    Les régles du forum
    Pensez au bouton

  6. #6
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 10
    Points : 7
    Points
    7
    Par défaut
    Citation Envoyé par afrikha
    Bonsoir,

    Quelle est l'erreur obtenue ?

    @+
    Voici mon code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    Scanner sc = new Scanner(System.in);
    		System.out.println("Saississez votre nom : ");
    		nom = sc.next();
    		System.out.println("Saississez votre prenom : ");
    		prenom = sc.next();
    		System.out.println("Saississez votre adresse : ");
    		adresse = sc.next();
    Au fait je vois ce n'ai pas une erreur mais quand je saisie par exemple au niveau du "rue de paris" il prend juste le premier mot (rue). et c'est paraile pour nom et prenom

  7. #7
    Membre chevronné
    Avatar de afrikha
    Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    1 600
    Détails du profil
    Informations personnelles :
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2005
    Messages : 1 600
    Points : 2 208
    Points
    2 208
    Par défaut
    Si tu es en Java 6, utilise la classe Console.

    Ton code devient alors :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    Console console = System.console();
    System.out.println("Saississez votre nom : ");
    nom = console.readLine();
    System.out.println("Saississez votre prenom : ");
    prenom = console.readLine();
    System.out.println("Saississez votre adresse : ");
    adresse = console.readLine();
    @+


    Mes publications
    Lisez
    Les régles du forum
    Pensez au bouton

  8. #8
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 10
    Points : 7
    Points
    7
    Par défaut
    Je vous remercie beaucoup, j'ai fait d'autres recherches et j'ai trouvé un autre moyen de regler le probleme. Ca marche trés bien
    voici mon code.

    [CODE]
    try{
    BufferedReader console=new BufferedReader(new InputStreamReader(System.in));
    System.out.println("Saississez votre nom : ");
    nom = console.readLine();
    System.out.println("Saississez votre prenom : ");
    prenom = console.readLine();
    System.out.println("Saississez votre adresse : ");
    adresse = console.readLine();
    }catch (java.io.IOException e) {System.out.println("exception" + e);}

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 5
    Dernier message: 13/06/2014, 15h14
  2. Réponses: 60
    Dernier message: 22/09/2011, 09h25
  3. Réponses: 1
    Dernier message: 18/09/2011, 02h55
  4. Réponses: 2
    Dernier message: 22/02/2007, 20h28
  5. les images dans une base de données
    Par houhou dans le forum Bases de données
    Réponses: 8
    Dernier message: 22/06/2004, 15h27

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo