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 :

[Oracle][JDBC]sauvgarde du contenu tables


Sujet :

JDBC Java

  1. #1
    Futur Membre du Club
    Inscrit en
    Août 2003
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Août 2003
    Messages : 8
    Points : 6
    Points
    6
    Par défaut [Oracle][JDBC]sauvgarde du contenu tables
    j'ai un probleme lors de la sauvgarde du contenu de deux tables en Oracle(Employe et Employe 2)
    à partir du java(Application lourd avec jdk 1.4)
    voici le code source:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Stmt=Con.createStatement();
    SQL="insert into Tb_imp select * from Employe where Date_Av >= to_date('01/01/2005')";
    Stmt.execute(SQL);
    SQL="insert into Tb_imp2 select * from Employe2 where Date_A >= to_date('01/01/2005')";
    Stmt.execute(SQL);
    Process P = Runtime.getRuntime().exec("C:/Export.exe");
    P.waitFor();

    avec Export.exe un programme appelant:
    - exp : l'utilitaire d'export d'oracle (exp.exe) j'exporte les deux tables (Employe et Employe 2)
    - ensuite NtBackup.exe : pour copier le fichier DMP dans une cartouche de sauvgarde


    Le probleme c'est qu' apres avoir lancer l'export , j'ai essayé de restaurer le contenu de deux tables ,
    c'est averé que le contenu des tables est manquant (nombre ligne manquant).
    à noter que si je lance l'export de ces deux tables directement à partir du ligne de commande ca marche correctement et je restaure toutes les lignes.

    Merci pour votre aide

  2. #2
    Membre actif Avatar de keil
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    261
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 261
    Points : 214
    Points
    214
    Par défaut
    je pense qu'entre ta derniere execution sql et le lancement de ton programme, il manque un laps de temps.
    veille d'abord a ce que tes requetes sql aient été accomplies jusqu'au bout avant d'appeler ton programme.
    Colère et Haine mènent à la Puissance

  3. #3
    Futur Membre du Club
    Inscrit en
    Août 2003
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Août 2003
    Messages : 8
    Points : 6
    Points
    6
    Par défaut pas de probleme au niveau du laps du temps
    j'ai un probleme lors de la sauvgarde du contenu de deux tables en Oracle(Employe et Employe 2)
    à partir du java(Application lourd avec jdk 1.4)

    voici le code source:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Stmt=Con.createStatement(); 
    SQL="insert into Tb_imp select * from Employe where Date_Av >= to_date('01/01/2005')"; 
    Stmt.execute(SQL); 
    SQL="insert into Tb_imp2 select * from Employe2 where Date_A >= to_date('01/01/2005')"; 
    Stmt.execute(SQL); 
    Process P = Runtime.getRuntime().exec("C:/Export.exe"); 
    P.waitFor();
    avec Export.exe un programme en Visual Basic appelant:
    - exp : l'utilitaire d'export d'oracle (exp.exe) j'exporte les deux tables (Employe et Employe 2)
    - ensuite NtBackup.exe : pour copier le fichier DMP dans une cartouche de sauvgarde


    Le probleme c'est qu' apres avoir lancer ce programme(voir code java), j'ai essayé de restaurer le contenu de deux tables ,
    c'est averé que le contenu des tables est manquant (nombre ligne manquant).
    à noter que le programme java cree les deux tables correctement ensuite apres avoir lancer export.exe; les données sont manquantes,
    si je lance le programme Visual Basic export.exe sur ces deux tables directement ca marche correctement, sans avoir utiliser code java et je restaure toutes les lignes.
    je pense qu'il ya un probleme entre java et Visual Basic

    Merci pour votre aide

  4. #4
    Membre éprouvé
    Profil pro
    Architecte technique
    Inscrit en
    Mars 2002
    Messages
    966
    Détails du profil
    Informations personnelles :
    Âge : 51
    Localisation : France

    Informations professionnelles :
    Activité : Architecte technique

    Informations forums :
    Inscription : Mars 2002
    Messages : 966
    Points : 1 085
    Points
    1 085
    Par défaut
    Citation Envoyé par VinceTlse
    Bonjour,
    Est ce que tu as positionné le "autoCommit" à true.
    Sinon tu peux à la fin de tes insertion, fais un Con.commit();

    Si tu commites pas, tes modifications ne seront pas visibles par ton utilitaire, car je pense qu'il a sa propre connexion base de données et pas celle que tu utilise dans ta partie java.
    Mais il me semble que l'autoCommit est positionné à TRUE implicitement.
    Tiens nous au courant.

  5. #5
    Futur Membre du Club
    Inscrit en
    Août 2003
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Août 2003
    Messages : 8
    Points : 6
    Points
    6
    Par défaut Auto commit à true
    j'ai verifié l'autocommit est à true
    en plus apres le lancement des ces seulement requetes,il ya tous les donéees

Discussions similaires

  1. Probleme Lecture contenu table Oracle
    Par lerorodu51 dans le forum Connexions aux bases de données
    Réponses: 2
    Dernier message: 25/03/2009, 10h59
  2. ORACLE / JDBC => Insérer un CLOB ...
    Par Doze dans le forum Oracle
    Réponses: 4
    Dernier message: 15/04/2005, 09h53
  3. [Struts][JDBC] Afficher le contenu d'un ResultSet
    Par ArseNic dans le forum JDBC
    Réponses: 11
    Dernier message: 26/01/2005, 11h11
  4. Réponses: 2
    Dernier message: 23/06/2004, 16h06
  5. [JDBC]tester si une table est vide
    Par zozolh2 dans le forum JDBC
    Réponses: 5
    Dernier message: 28/05/2004, 09h17

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