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 :

[ADO ] Chemin virtuel


Sujet :

Bases de données Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    68
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 68
    Par défaut [ADO ] Chemin virtuel
    Bonjour à tous,

    J'ai une base Access (sur mon disque D) et j'ai une connection ADO
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    ADOTable1.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source= D:\Projet Oryx\Oryx Guide pratique\BasesOryx\DataGuide.mdb;Persist Security Info=False';
    ADOTable1.TableName:='TblEtapes';
    ADOTable1.Active:= True
    Si j'installe tel quel sur un autre poste (qui installe le programme sur C) j'aurais une erreur.

    Donc comment mettre ...Source = ...\Projet Oryx\Oryx Guide (cela génére une erreur, tel quel) afin que le programme cherche sur le bon disque.

    Merci

    Pascal

  2. #2
    Membre Expert
    Avatar de NoisetteProd
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    1 905
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 1 905
    Par défaut
    le mieux est de faire une fenetre de connection ou l'utilisateur va choisir le chemin de sa base avec un opendialog

    du coup, tu fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    Var CheminBase : string;
    ...
     
    opendialog1.Execute;
    CheminBase := opendialog1.FileName;
    ADOTable1.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source= '+CheminBase+';Persist Security Info=False'; 
    ADOTable1.TableName:='TblEtapes'; 
    ADOTable1.Active:= True
    Enfin, un truc dans le genre...

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    68
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 68
    Par défaut
    Merci NoisetteProd pour ta réponse, effectivement j'ai bien pensé à ça mais si tu laisses l'utilisateur rentrer son chemin, là il y a un gros danger.

    C'est pour cela que je voulais l'écrire en dur.

  4. #4
    Membre Expert

    Homme Profil pro
    Inscrit en
    Mars 2004
    Messages
    897
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2004
    Messages : 897
    Par défaut
    Si ta station est partagée en réseau, essaie donc quelque chose comme cela :
    Data Source= \\nom_station\Projet Oryx\Oryx Guide pratique\...

  5. #5
    Membre Expert
    Avatar de NoisetteProd
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    1 905
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 1 905
    Par défaut
    Salut ! Bon, j'avais pas bien compris ton problème !

    Je suppose que ta base est dans le meme dossier ou dans un dossier en dessous ton appli ??

    Si c'est le cas, tu peux utiliser : ExtractFilePath(Application.ExeName) qui te permet de recuperer le repertoire utilisé par ton appli. Si tu utilise un sous répertoire tu rajoute à cela le sous repertoire utilisé et pour finir, tu ajout le nom de ta base...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Var CheminBase : string; 
    ... 
     
    CheminBase := ExtractFilePath(Application.ExeName)+'lerepertoiredelabase'+'nomdemabase';
    ADOTable1.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source= '+CheminBase+';Persist Security Info=False'; 
    ADOTable1.TableName:='TblEtapes'; 
    ADOTable1.Active:= True
    J'espère que cette fois, c'est ok pour toi !

    Bon courage !

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    68
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 68
    Par défaut
    Merci je teste ce soir chez moi et demain je te dis ce qu'il en ai.

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    68
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 68
    Par défaut
    Merci à tous et surtout à NoisetteProd ta réponse est bonne

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

Discussions similaires

  1. Convertion d'un fichier phyisque en chemin virtuel
    Par soso78 dans le forum ASP.NET
    Réponses: 1
    Dernier message: 27/05/2008, 15h02
  2. Passer de l'adresse phyque (C:/) au chemin virtuel (http)
    Par calagan99 dans le forum ASP.NET
    Réponses: 2
    Dernier message: 22/05/2008, 09h45
  3. SaveAs et chemin virtuel
    Par Moony Light dans le forum ASP.NET
    Réponses: 4
    Dernier message: 19/11/2007, 17h22
  4. le chemin virtuel d'un dossier
    Par karinal dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 31/08/2007, 12h35
  5. [c#]application et chemin virtuel
    Par dude666 dans le forum ASP.NET
    Réponses: 2
    Dernier message: 20/07/2005, 11h22

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