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 :

[Access] Exporter - Importer (MAJ de table)


Sujet :

Bases de données Delphi

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2006
    Messages : 20
    Points : 12
    Points
    12
    Par défaut [Access] Exporter - Importer (MAJ de table)
    Bonjour à tous,

    A votre avis, y a t'il moyen sous delphi, via un bouton, de demander a ce qu'access exporte une certaine table d'une Bdd pour aller l'importer dans une autre BDD ?

    en gros, j'aimerais à la base, faire une mise-à-jour d'une table produit via plusieurs autres tables qui se trouvent dans une autre base de données.

    Est-ce que c'est possible et si oui, comment ?


    Je vous remercie d'avance.


    Marcant.

  2. #2
    Modérateur
    Avatar de Rayek
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    5 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 235
    Points : 8 504
    Points
    8 504
    Par défaut
    Si les données viennent d'une base de données Access/paradox alors jette un oeil à la requete de type :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    select * into La_table in L_autre_table
    Sinon tu peux le faire directement en delphi, en réalisant ta procédure de transfert des données.
    Modérateur Delphi

    Le guide du bon forumeur :
    __________
    Rayek World : Youtube Facebook

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2006
    Messages : 20
    Points : 12
    Points
    12
    Par défaut
    Salut,

    Oui, mais le problème ici, c'est que les tables en question se trouve dans 2 bases de données bien distinct ! Donc, je ne pense pas qu'une simple requête SQL puisse me faire ca.

    Voilà mon problème. Sinon, les 2 bases de données sont bien 2 bases access.


    Marcant.

  4. #4
    Modérateur
    Avatar de Rayek
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    5 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 235
    Points : 8 504
    Points
    8 504
    Par défaut
    Ce n'est pas un problème surtout si c'est deux bases de données Access et ca se regle avec une requete ^^

    Si la Table n'existe pas

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    select *  into [TableDestination]  IN '[Chemin+NomdelaDBDestination]'
    from TableSource
    Where [critères]
    Si la table Existe

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Insert into [TableDestination] IN '[Chemin + NomDeLaDBDestination]'
    Select * from TableSource
    Where [Critères]
    Attention au ' qui encadre le chemin+NomDeLaDBDestination, il faut les mettre
    Modérateur Delphi

    Le guide du bon forumeur :
    __________
    Rayek World : Youtube Facebook

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2006
    Messages : 20
    Points : 12
    Points
    12
    Par défaut
    Ha excellent ca !

    Je ne pensais pas qu'une requete dans un bdd pouvait aller cibler une autre !
    Ben je vais essayer tout de suite, et je te tiens au courant.

    Un grand merci !!!

    Marcant.

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2006
    Messages : 20
    Points : 12
    Points
    12
    Par défaut
    Bon, j'ai testé une fois directement depuis une des bases de donnée, ca marche bien ! Par contre, j'ai du donné le chemin exacte de ma base de donnée, y aurait-il moyen de lui mettre un chemin relatif ?

    Après j'ai testé dans un ADOQuery de Delphi mais là, j'ai une erreur comme quoi il ne trouve pas le mdb de source (qui apparement, serait plutot la table de destination, car quand il ne trouve pas cellui-ci, j'ai un message d'erreur nettement plus parlant style : "ne trouve pas ''data\tupperware.mdb'' ").

    Pour avoir plus facile, voilà ma requete dans l'ADOQuery :

    ADOQuery_Art.Close;
    ADOQuery_Art.Connection:=ADOConnection_Tup;
    ADOQuery_Art.SQL.Clear;
    ADOQuery_Art.SQL.Add('SELECT Article.Articleld, Article.ArticleLibelleFR ');
    ADOQuery_Art.SQL.ADD('INTO [Produitplus] IN ''Data\Tuppe.mdb'' ');
    ADOQuery_Art.SQL.Add('FROM Data\tupperware.mdb ');
    ADOQuery_Art.ExecSQL;
    ADOQuery_Art.Close;


    Marcant.

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2006
    Messages : 20
    Points : 12
    Points
    12
    Par défaut
    Voilà, c'est pour prévenir qu'après une très très grosse heure de recherche j'ai enfin pu réussir à faire passer une table d'une base de données à une autre via un ADOQuery de delphi.

    Histoire que ca puisse servir à quelqu'un plutard, voici le code :

    begin

    // Chemin de ma base de donnée de destination
    Source:=extractfiledir(application.ExeName)+'\Data\Tuppe.mdb';

    ADOQuery_Art.Close;
    ADOQuery_Art.Connection:=ADOConnection_Tup;
    ADOQuery_Art.SQL.Clear;
    ADOQuery_Art.SQL.Add(' SELECT * INTO Produitplus ');
    ADOQuery_Art.SQL.Add(' IN '+QuotedStr(source)+' ');
    ADOQuery_Art.SQL.Add(' FROM Article ');
    ADOQuery_Art.ExecSQL;
    ADOQuery_Art.Close;

    // Message de confirmation
    showmessage('Table Produitplus ajoutée !');

    end;

    Un tout tout grand merci à Malatar qui m'a non seulement aidé mais appris à faire ca. Merci bien !


    Marcant,
    Qui avance.

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

Discussions similaires

  1. [phpMyAdmin] Exportation / importation d'une table gros volume
    Par faiez dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 12
    Dernier message: 08/09/2009, 10h59
  2. import d'une table access ds mysql
    Par nogood1 dans le forum SQL Procédural
    Réponses: 4
    Dernier message: 26/05/2006, 14h12
  3. Réponses: 6
    Dernier message: 15/05/2006, 17h04
  4. importer des élémentsde table d'access en paradox
    Par bertrand_declerck dans le forum Bases de données
    Réponses: 2
    Dernier message: 22/08/2005, 13h17
  5. Comment exporter / importer une table postgres
    Par Elois dans le forum PostgreSQL
    Réponses: 2
    Dernier message: 01/03/2005, 18h22

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