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

Bases de données Delphi Discussion :

chemin d'une table access


Sujet :

Bases de données Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Août 2007
    Messages
    158
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 158
    Par défaut chemin d'une table access
    Bon soir :
    Je veux savoir;s'il ya une fonction en delphi qui permet de recuperer le chemin d'une table ou des tables access dans l'explorateur : c'est a dire de parcourir les repertoires pour atteindre a ce fichier (table).

    Sachant qu'on se connect a ACCESS en utilisant l'ADO

    Merci

  2. #2
    Membre chevronné Avatar de archonte
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    343
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 343
    Par défaut
    Si j'ai bien compris ta question : tu poses un TADOConnection sur ta fiche, dont tu modifies la chaine de connexion pour y renseigner le chemin et le nom de ton fichier access (*.mdb p.ex).

    Les tables access pour une base donnée sont toutes dans le même fichier.

    Un petit tour par la ici ?

  3. #3
    Membre confirmé
    Inscrit en
    Août 2007
    Messages
    158
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 158
    Par défaut chemin table
    Citation Envoyé par archonte Voir le message
    Si j'ai bien compris ta question : tu poses un TADOConnection sur ta fiche, dont tu modifies la chaine de connexion pour y renseigner le chemin et le nom de ton fichier access (*.mdb p.ex).

    Les tables access pour une base donnée sont toutes dans le même fichier.

    Un petit tour par la ici ?
    Bon jour
    Merci pour la reponse
    Je dois poser la question : quel sgbd à utiliser qui peut à travers celui ci recuperer le chemin des tables

  4. #4
    Membre confirmé
    Inscrit en
    Août 2007
    Messages
    158
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 158
    Par défaut chemin table
    Bon Soir
    Je pense que je dois creer une base donnee au lieu des tables
    Que pensez vous

  5. #5
    Membre Expert
    Homme Profil pro
    Directeur technique
    Inscrit en
    Mai 2008
    Messages
    2 400
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2008
    Messages : 2 400
    Par défaut
    Citation Envoyé par gentilman_delphi Voir le message
    Bon Soir
    Je pense que je dois creer une base donnee au lieu des tables
    Que pensez vous
    Salut;

    désolé de te dire ça mais j'arrive pas à comprendre ce que tu veux :
    1. Récupérer une base de données access existante ?
    2. Afficher les tables d'une base de données access ?
    3. créer une base de données access ?

    en plus c'est quoi le but ?
    1. parcourir le disque dur ou tout autre support à la recherche des BD Access ?
    2. réaliser une application de gestion de données ?


    Fais une description de ce que tu veux avec quels outils ? quelle technologie ? Bref, tout les détails qui peuvent nous aider à t'orienter.

  6. #6
    Membre confirmé
    Inscrit en
    Août 2007
    Messages
    158
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 158
    Par défaut
    Citation Envoyé par Just-Soft Voir le message
    Salut;

    désolé de te dire ça mais j'arrive pas à comprendre ce que tu veux :
    1. Récupérer une base de données access existante ?
    2. Afficher les tables d'une base de données access ?
    3. créer une base de données access ?

    en plus c'est quoi le but ?
    1. parcourir le disque dur ou tout autre support à la recherche des BD Access ?
    2. réaliser une application de gestion de données ?


    Fais une description de ce que tu veux avec quels outils ? quelle technologie ? Bref, tout les détails qui peuvent nous aider à t'orienter.
    Bon Jour
    Je suis en train de faire une gestion de stock
    Il s'agit des tables(ou query) et des dossier: chaque dossier représente une année de travail;donc nous aurons des dossiers (2009,2010,2011,...).
    Dans chaque dossier;nous aurons des tables (exemple dans le dossier 2009 existent les tables 2009article,2009fournisseur,2009client,...et pour le dossier 2010 existent les tables 2010article,2010fournisseur,2010client,...

    A la nouvelle année;il s'agit de créer un dossier par forcedirectories et de créer des nouvelles tables de cette année

    Et ça le probleme :de le nouveau dossier des tables ou une base mdb

    Je pense que je suis clair
    Merci

  7. #7
    Membre Expert
    Homme Profil pro
    Directeur technique
    Inscrit en
    Mai 2008
    Messages
    2 400
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2008
    Messages : 2 400
    Par défaut
    Re;

    ça devrait en gros ressembler à quelque chose comme ça :
    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
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    procedure TFChoix.FormActivate(Sender: TObject);
    var
      Dir : String;
      AParams : TStringList;
      ListItem : TListItem;
      CheminFichier : String;
      Position :integer;
    begin
      if (DModuleADO = nil) then
          Application.CreateForm(TDModuleADO,DModuleADO);
     
      PanelCreation.Visible := False;
     
      //Recherche de l'alias
      AParams   := TStringList.Create;
      if FileExists('PAIE_MAX.mdb') then
      begin
        CheminFichier := ExpandfileName('PAIE_MAX.mdb');
        Position      := Pos('PAIE_MAX.mdb',Trim(CheminFichier));
        CheminFichier := Copy(Trim(CheminFichier),1,(Position-2));
      end
      else
      begin
        ShowMessage('Base de données "PAIE_MAX.mdb" introuvable, Réinstaller votre application');
        Exit;
      end;
     
      if not DModuleADO.Session.IsAlias('PAIE_MAX') then
      begin
        DModuleADO.Session.AddStandardAlias('PAIE_MAX',CheminFichier,'Dbase');
        DModuleADO.Session.SaveConfigFile;
      end;
     
      DModuleADO.Session.GetAliasParams('PAIE_MAX',AParams);
      Dir := Copy(AParams.Strings[0],6,255);
      Rep := Dir+'\Donnees';
     
      // Creation des repertoires et sous repertoires
      if not DirectoryExists(Rep) then Forcedirectories(Rep);
     
      ListViewPaie.Items.Clear;
      DModuleADO.TDossier.DatabaseName := 'PAIE_MAX';
      DModuleADO.TDossier.Open;
      DModuleADO.TDossier.First;
      while not DModuleADO.TDossier.Eof do
      begin
        if not Fileexists(Rep+'\PAIE_MAX'+Trim(intToStr(DModuleADO.TDossier.Fieldbyname('Annee').asinteger))+'.mdb') then
               CopyFile(PChar(Dir+'\PAIE_MAX.MDB'),PChar(Rep+'\PAIE_MAX'+Trim(intToStr(DModuleADO.TDossier.Fieldbyname('Annee').asinteger))+'.mdb'),True);
        with ListViewPaie do ListItem := Items.Add;
        ListItem.Caption := 'Gestion '+Trim(intToStr(DModuleADO.TDossier.Fieldbyname('Annee').asinteger));
        DModuleADO.TDossier.Next;
      end;
      ActivationBouttons;
    end;
    C'est une portion de code que j'ai tiré d'une vieille application de gestion de paie. Seule remarque ta base de données devra porter le nom Stock2009, Stock2010 etc.., mais pas Clients2009, Fournisseurs2009 car Clients, Fournisseurs, Articles sont eux même les tables de ta BD Access. Tu fais une confusion entre table et Base de données, cette dernière est constituée de tables, vues, requêtes, etc...

    Je reste à l'écoute ...

  8. #8
    Membre confirmé
    Inscrit en
    Août 2007
    Messages
    158
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 158
    Par défaut
    Citation Envoyé par Just-Soft Voir le message
    Re;

    ça devrait en gros ressembler à quelque chose comme ça :
    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
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    procedure TFChoix.FormActivate(Sender: TObject);
    var
      Dir : String;
      AParams : TStringList;
      ListItem : TListItem;
      CheminFichier : String;
      Position :integer;
    begin
      if (DModuleADO = nil) then
          Application.CreateForm(TDModuleADO,DModuleADO);
     
      PanelCreation.Visible := False;
     
      //Recherche de l'alias
      AParams   := TStringList.Create;
      if FileExists('PAIE_MAX.mdb') then
      begin
        CheminFichier := ExpandfileName('PAIE_MAX.mdb');
        Position      := Pos('PAIE_MAX.mdb',Trim(CheminFichier));
        CheminFichier := Copy(Trim(CheminFichier),1,(Position-2));
      end
      else
      begin
        ShowMessage('Base de données "PAIE_MAX.mdb" introuvable, Réinstaller votre application');
        Exit;
      end;
     
      if not DModuleADO.Session.IsAlias('PAIE_MAX') then
      begin
        DModuleADO.Session.AddStandardAlias('PAIE_MAX',CheminFichier,'Dbase');
        DModuleADO.Session.SaveConfigFile;
      end;
     
      DModuleADO.Session.GetAliasParams('PAIE_MAX',AParams);
      Dir := Copy(AParams.Strings[0],6,255);
      Rep := Dir+'\Donnees';
     
      // Creation des repertoires et sous repertoires
      if not DirectoryExists(Rep) then Forcedirectories(Rep);
     
      ListViewPaie.Items.Clear;
      DModuleADO.TDossier.DatabaseName := 'PAIE_MAX';
      DModuleADO.TDossier.Open;
      DModuleADO.TDossier.First;
      while not DModuleADO.TDossier.Eof do
      begin
        if not Fileexists(Rep+'\PAIE_MAX'+Trim(intToStr(DModuleADO.TDossier.Fieldbyname('Annee').asinteger))+'.mdb') then
               CopyFile(PChar(Dir+'\PAIE_MAX.MDB'),PChar(Rep+'\PAIE_MAX'+Trim(intToStr(DModuleADO.TDossier.Fieldbyname('Annee').asinteger))+'.mdb'),True);
        with ListViewPaie do ListItem := Items.Add;
        ListItem.Caption := 'Gestion '+Trim(intToStr(DModuleADO.TDossier.Fieldbyname('Annee').asinteger));
        DModuleADO.TDossier.Next;
      end;
      ActivationBouttons;
    end;
    C'est une portion de code que j'ai tiré d'une vieille application de gestion de paie. Seule remarque ta base de données devra porter le nom Stock2009, Stock2010 etc.., mais pas Clients2009, Fournisseurs2009 car Clients, Fournisseurs, Articles sont eux même les tables de ta BD Access. Tu fais une confusion entre table et Base de données, cette dernière est constituée de tables, vues, requêtes, etc...

    Je reste à l'écoute ...
    Bon soir

    Pour bien me comprendre: au début mr (gentilman_delphi ) a établi une base données appelée stock;celle ci comprend des tables :Article,Fournisseur,client,....
    Le principe est de laisser ces tables vides des enregistrements (seulement la structure)
    Dans chaque dossier (2009,2010,2011,...) il doit créer des tables de mêmes structures:

    2009Article Dans Dossier 2009 même structure que Article
    2009Fournisseur Dans Dossier 2009 même structure que Fournisseur
    2009Client Dans Dossier 2009 même structure que Client...

    2010Article Dans Dossier 2010 même structure que Article
    2010Fournisseur Dans Dossier 2010 même structure que Fournisseur
    2010Client Dans Dossier 2010 même structure que Client...


    2011Article Dans Dossier 2011 même structure que Article
    2011Fournisseur Dans Dossier 2011 même structure que Fournisseur
    2011Client Dans Dossier 2011 même structure que Client...


    C'est le principe et ma première question de la création des tables ou des BDE (2009BDE,2010BDE,2011BDE,...)dans les dossiers (2009,2010,2011,...)

    Si la réponse est de créer des tables ;Comment fera pour des tables ACCESS

    J'espère que je suis clair

    Merci

Discussions similaires

  1. [AC-2003] Recherche du chemin optimale sur une table Access
    Par Xray333 dans le forum Modélisation
    Réponses: 1
    Dernier message: 29/08/2009, 07h42
  2. Récupérer les mails Outlook dans une table Access
    Par zerrokooll dans le forum VBA Access
    Réponses: 79
    Dernier message: 07/07/2009, 14h22
  3. Ajouter un champs dans une table (Access 2000)
    Par Didier100 dans le forum Bases de données
    Réponses: 2
    Dernier message: 12/10/2004, 13h02
  4. insertion d'un type date dans une table access
    Par monstour dans le forum ASP
    Réponses: 7
    Dernier message: 18/06/2004, 16h57
  5. recherche dans une table Access en ASP
    Par D-D dans le forum ASP
    Réponses: 3
    Dernier message: 09/06/2004, 10h12

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