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

Delphi Discussion :

Composant ADO Connection


Sujet :

Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif
    Homme Profil pro
    Passion pour la programmation
    Inscrit en
    Novembre 2015
    Messages
    101
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : Algérie

    Informations professionnelles :
    Activité : Passion pour la programmation
    Secteur : Services à domicile

    Informations forums :
    Inscription : Novembre 2015
    Messages : 101
    Par défaut Composant ADO Connection
    Bonsoir,
    je travaille avec les composant ADO un certain moment
    Nom : inspecteur d'objet.PNG
Affichages : 1054
Taille : 11,5 KoNom : Liason de données.PNG
Affichages : 1065
Taille : 28,7 Ko

    Le programme et bien écrit en langage delphi
    par la suite je voulais travailler avec l'utilitaire réparer une base de donnée
    CompactAccessDB(Chemin+'\BD.ACCDB','*************');
    j'avais ses message
    Eolexeption (Argument non valide)
    (pas de base de données)
    (Compactage non réussi)

    je ne s'est plus ce que je doit configurer

  2. #2
    Modérateur
    Avatar de tourlourou
    Homme Profil pro
    Biologiste ; Progr(amateur)
    Inscrit en
    Mars 2005
    Messages
    3 935
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Biologiste ; Progr(amateur)

    Informations forums :
    Inscription : Mars 2005
    Messages : 3 935
    Billets dans le blog
    6
    Par défaut
    Comment appelles-tu cet utilitaire ? Grâce à un code de ce type ?
    Delphi 5 Pro - Delphi 11.3 Alexandria Community Edition - CodeTyphon 6.90 sous Windows 10 ; CT 6.40 sous Ubuntu 18.04 (VM)
    . Ignorer la FAQ Delphi et les Cours et Tutoriels Delphi nuit gravement à notre code !

  3. #3
    Membre très actif
    Homme Profil pro
    Passion pour la programmation
    Inscrit en
    Novembre 2015
    Messages
    101
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : Algérie

    Informations professionnelles :
    Activité : Passion pour la programmation
    Secteur : Services à domicile

    Informations forums :
    Inscription : Novembre 2015
    Messages : 101
    Par défaut
    j'ai vue ce code mais il y'a un message('Compactage non réussi')

  4. #4
    Modérateur
    Avatar de tourlourou
    Homme Profil pro
    Biologiste ; Progr(amateur)
    Inscrit en
    Mars 2005
    Messages
    3 935
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Biologiste ; Progr(amateur)

    Informations forums :
    Inscription : Mars 2005
    Messages : 3 935
    Billets dans le blog
    6
    Par défaut
    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
    30
    31
    32
    33
    34
    35
    function CompactAccessDB(db,mdp : string): Boolean; {DB = path complet de la base Access, MdP = password de la DB }
    // Ajouter ComObj dans les Uses
    var
      v: OLEvariant;
    begin
      Result := False;
      //backup de la base
      if not CopyFile(PAnsiChar(db),PAnsiChar(db+'.bak'),False) 
      then begin
        showmessage('Base de données introuvable'); 
        exit;
      end;
      //compactage
      try
        v := CreateOLEObject('JRO.JetEngine');
     
        try
     
          begin
            V.CompactDatabase('Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+db+';Jet OLEDB:Database Password='+mdp,
             'Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+db+'comp'+';Jet OLEDB:Database Password='+mdp); //compactage
            DeleteFile(db);// suppression de la base d'origin
            RenameFile(db+'comp',db); // mise en place de la base compactée
            Result := True;
          end;
     
        except
          showmessage('exception lors du compactage');
        end;
     
      finally
        V := Unassigned;
      end;
     
    end;
    ce style de code, aux imbrications remaniées, fonctionne-t-il mieux ?
    Delphi 5 Pro - Delphi 11.3 Alexandria Community Edition - CodeTyphon 6.90 sous Windows 10 ; CT 6.40 sous Ubuntu 18.04 (VM)
    . Ignorer la FAQ Delphi et les Cours et Tutoriels Delphi nuit gravement à notre code !

  5. #5
    Membre très actif
    Homme Profil pro
    Passion pour la programmation
    Inscrit en
    Novembre 2015
    Messages
    101
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : Algérie

    Informations professionnelles :
    Activité : Passion pour la programmation
    Secteur : Services à domicile

    Informations forums :
    Inscription : Novembre 2015
    Messages : 101
    Par défaut
    bonsoir,
    j'ai le message ('exception lors du compactage');

  6. #6
    Modérateur
    Avatar de tourlourou
    Homme Profil pro
    Biologiste ; Progr(amateur)
    Inscrit en
    Mars 2005
    Messages
    3 935
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Biologiste ; Progr(amateur)

    Informations forums :
    Inscription : Mars 2005
    Messages : 3 935
    Billets dans le blog
    6
    Par défaut
    Bonsoir,
    En changeant le bloc Except, quelle erreur s'affiche-t-il ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
        except
          on E: Exception do showmessage('erreur au compactage : '+E.message);
        end;
    Selon le message, tu pourras en déduire si c'est bien la fonction de compactage qui échoue, et vérifier la chaîne passée en argument :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    S := 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+db+';Jet OLEDB:Database Password='+mdp,
             'Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+db+'comp'+';Jet OLEDB:Database Password='+mdp;
    V.CompactDatabase(S);
    //...
    except
      on E: Exception do showmessage(S);
    end;
    Delphi 5 Pro - Delphi 11.3 Alexandria Community Edition - CodeTyphon 6.90 sous Windows 10 ; CT 6.40 sous Ubuntu 18.04 (VM)
    . Ignorer la FAQ Delphi et les Cours et Tutoriels Delphi nuit gravement à notre code !

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

Discussions similaires

  1. Connection composant ado/interbase
    Par kroma23 dans le forum Bases de données
    Réponses: 2
    Dernier message: 17/01/2009, 19h11
  2. Demande explication sur un composant ADO
    Par Golork dans le forum Bases de données
    Réponses: 3
    Dernier message: 17/07/2005, 20h22
  3. Optimisation temps d'accès Bdd des composants ADO
    Par Creenshaw dans le forum Bases de données
    Réponses: 14
    Dernier message: 07/06/2005, 17h09
  4. [SGBD][ADO] et composants ADO.NET (bug)
    Par Harry dans le forum Delphi .NET
    Réponses: 2
    Dernier message: 25/04/2005, 09h20
  5. [MFC] ADO connection
    Par philippe V dans le forum MFC
    Réponses: 3
    Dernier message: 10/06/2002, 07h36

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