Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

2 tables sur 2 BD

9 réponses
Avatar
lauzonmi
Bonjour à tous,

Je veux créer une jointure sur deux tables qui sont dans deux bse de données
différentes???

Ma table "Client" est dans la base de données ouverte (C:\Labo\Labo.mdb) ma
deuxième table "Archive" est sur mon serveur (\\ML\Labo\ArchLabo.mdb).

Le but est d'affiché le nom des clients à des résultats archivés!!!

Merci à tous

9 réponses

Avatar
CAIRIS
Bonjour

Il suffit de lier ta table Archives dans ta base de données principales :
- dans Access 2007, Données externes>Access
- dans les versions antérieures, tu cliques avec le bouton droit sur la
fenêtre tables et tu choisis "lier une table".
--
Catherine


"lauzonmi" wrote:

Bonjour à tous,

Je veux créer une jointure sur deux tables qui sont dans deux bse de données
différentes???

Ma table "Client" est dans la base de données ouverte (C:LaboLabo.mdb) ma
deuxième table "Archive" est sur mon serveur (MLLaboArchLabo.mdb).

Le but est d'affiché le nom des clients à des résultats archivés!!!

Merci à tous


Avatar
lauzonmi
Merci CAIRIS,

J'avais envisagé cette technique mais la table à laquel j'accède pour les
archives sont séparer en fonction des années. n'étant pas une table fixe je
ne peux la spécifier dans ma base de données principales.

J'ai alors opté pour la fonction TransfertDatabase du group DoCmd. Cette
fonction me permetrait de créer ce lien dynamique. La fonction passe dans le
code sans causer d'erreur mais rien n'est visible au niveau de la base de
donnée.

DoCmd.TransferDatabase acLink, "Microsoft Access", _
strpath & "ArchLabo.mdb", acTable, "Arch2008", "Archive"

Alors je revien à la case départ!!!!


"CAIRIS" wrote:

Bonjour

Il suffit de lier ta table Archives dans ta base de données principales :
- dans Access 2007, Données externes>Access
- dans les versions antérieures, tu cliques avec le bouton droit sur la
fenêtre tables et tu choisis "lier une table".
--
Catherine


"lauzonmi" wrote:

> Bonjour à tous,
>
> Je veux créer une jointure sur deux tables qui sont dans deux bse de données
> différentes???
>
> Ma table "Client" est dans la base de données ouverte (C:LaboLabo.mdb) ma
> deuxième table "Archive" est sur mon serveur (MLLaboArchLabo.mdb).
>
> Le but est d'affiché le nom des clients à des résultats archivés!!!
>
> Merci à tous


Avatar
lauzonmi
Boujour à tous et à toutes

J'en rajoute, J'ai essayé une technique de table liée (voir la réponse à
CAIRIS).

J'ai aussi vue à quelque part une fonction sous SQL

StrSql = Select DISTINCT T.Ferme, F.Company From Client F Inner Join
database.opendatabase(mlLaboArchLabo.mdb).Arch2007 T ON F.FarmNumber =
T.Ferme

Ça n'a rien donné de plus que des erreurs de compilation.

J'ai aussi essayé de créer la table à partir de la table assigé à une
variable TabDef Tab2Labo. Même si je peux lire les données aucomplet. Une
erreur disant que Arch2007 n'est pas ouverte!!!!

DoCmd.CopyObject , Tab2Labo.Name, acTable, "ArchLnk"

Si quelqu'un à une donne idée...

Merci à l'avance

Michel

"lauzonmi" wrote:

Bonjour à tous,

Je veux créer une jointure sur deux tables qui sont dans deux bse de données
différentes???

Ma table "Client" est dans la base de données ouverte (C:LaboLabo.mdb) ma
deuxième table "Archive" est sur mon serveur (MLLaboArchLabo.mdb).

Le but est d'affiché le nom des clients à des résultats archivés!!!

Merci à tous


Avatar
CErnst
On peut très bien faire une requète qui pointe sur une table externe :

SELECT * FROM VotreTable IN 'C:RépertoireVotreBase.mdb';





"lauzonmi" a écrit dans le message de
news:
Bonjour à tous,

Je veux créer une jointure sur deux tables qui sont dans deux bse de
données
différentes???

Ma table "Client" est dans la base de données ouverte (C:LaboLabo.mdb)
ma
deuxième table "Archive" est sur mon serveur (MLLaboArchLabo.mdb).

Le but est d'affiché le nom des clients à des résultats archivés!!!

Merci à tous


Avatar
lauzonmi
Merci CErnst,

Bien sur (une excellente idée) mais il me semble qu'il manque la fonction
"Into" pour bien router les informations.

""
SELECT * INTO Nouvel table IN 'C:RépertoireVotreBase.mdb' FROM VotreTable;
""

Quand penses-tu?


"CErnst" wrote:

On peut très bien faire une requète qui pointe sur une table externe :

SELECT * FROM VotreTable IN 'C:RépertoireVotreBase.mdb';





"lauzonmi" a écrit dans le message de
news:
> Bonjour à tous,
>
> Je veux créer une jointure sur deux tables qui sont dans deux bse de
> données
> différentes???
>
> Ma table "Client" est dans la base de données ouverte (C:LaboLabo.mdb)
> ma
> deuxième table "Archive" est sur mon serveur (MLLaboArchLabo.mdb).
>
> Le but est d'affiché le nom des clients à des résultats archivés!!!
>
> Merci à tous





Avatar
CErnst
Oui Si on veut ramener les données.

Mais sinon on crée une requète Archives :
SELECT * FROM VotreTable IN 'C:RépertoireVotreBase.mdb'; (qui peut se
créer dynamiquement)
et on s'en sert dans une nouvelle requète "Dossiers Archivés" en la reliant
alors à la table clients, "Dossiers Archivés" pouvant dès lors être
consitéré comme une table locale ayant l'avantage de ne pas prendre de
place.



"lauzonmi" a écrit dans le message de
news:
Merci CErnst,

Bien sur (une excellente idée) mais il me semble qu'il manque la fonction
"Into" pour bien router les informations.

""
SELECT * INTO Nouvel table IN 'C:RépertoireVotreBase.mdb' FROM
VotreTable;
""

Quand penses-tu?


"CErnst" wrote:

On peut très bien faire une requète qui pointe sur une table externe :

SELECT * FROM VotreTable IN 'C:RépertoireVotreBase.mdb';





"lauzonmi" a écrit dans le message
de
news:
> Bonjour à tous,
>
> Je veux créer une jointure sur deux tables qui sont dans deux bse de
> données
> différentes???
>
> Ma table "Client" est dans la base de données ouverte
> (C:LaboLabo.mdb)
> ma
> deuxième table "Archive" est sur mon serveur (MLLaboArchLabo.mdb).
>
> Le but est d'affiché le nom des clients à des résultats archivés!!!
>
> Merci à tous







Avatar
lauzonmi
Merci beaucoup


"CErnst" wrote:

Oui Si on veut ramener les données.

Mais sinon on crée une requète Archives :
SELECT * FROM VotreTable IN 'C:RépertoireVotreBase.mdb'; (qui peut se
créer dynamiquement)
et on s'en sert dans une nouvelle requète "Dossiers Archivés" en la reliant
alors à la table clients, "Dossiers Archivés" pouvant dès lors être
consitéré comme une table locale ayant l'avantage de ne pas prendre de
place.



"lauzonmi" a écrit dans le message de
news:
> Merci CErnst,
>
> Bien sur (une excellente idée) mais il me semble qu'il manque la fonction
> "Into" pour bien router les informations.
>
> ""
> SELECT * INTO Nouvel table IN 'C:RépertoireVotreBase.mdb' FROM
> VotreTable;
> ""
>
> Quand penses-tu?
>
>
> "CErnst" wrote:
>
>> On peut très bien faire une requète qui pointe sur une table externe :
>>
>> SELECT * FROM VotreTable IN 'C:RépertoireVotreBase.mdb';
>>
>>
>>
>>
>>
>> "lauzonmi" a écrit dans le message
>> de
>> news:
>> > Bonjour à tous,
>> >
>> > Je veux créer une jointure sur deux tables qui sont dans deux bse de
>> > données
>> > différentes???
>> >
>> > Ma table "Client" est dans la base de données ouverte
>> > (C:LaboLabo.mdb)
>> > ma
>> > deuxième table "Archive" est sur mon serveur (MLLaboArchLabo.mdb).
>> >
>> > Le but est d'affiché le nom des clients à des résultats archivés!!!
>> >
>> > Merci à tous
>>
>>
>>





Avatar
Blaise Cacramp
Selon : Bonjour ou bonsoir

Excellente idée, mais il y a quand même un hic : on ne sait pas créer un
"respect de l'intégrité"

Cdt, Blaise
---- ---- ----


"CErnst" a écrit dans le message de news:

Oui Si on veut ramener les données.

Mais sinon on crée une requète Archives :
SELECT * FROM VotreTable IN 'C:RépertoireVotreBase.mdb'; (qui peut se
créer dynamiquement)
et on s'en sert dans une nouvelle requète "Dossiers Archivés" en la
reliant alors à la table clients, "Dossiers Archivés" pouvant dès lors
être consitéré comme une table locale ayant l'avantage de ne pas prendre
de place.



"lauzonmi" a écrit dans le message de
news:
Merci CErnst,

Bien sur (une excellente idée) mais il me semble qu'il manque la fonction
"Into" pour bien router les informations.

""
SELECT * INTO Nouvel table IN 'C:RépertoireVotreBase.mdb' FROM
VotreTable;
""

Quand penses-tu?


"CErnst" wrote:

On peut très bien faire une requète qui pointe sur une table externe :

SELECT * FROM VotreTable IN 'C:RépertoireVotreBase.mdb';





"lauzonmi" a écrit dans le message
de
news:
> Bonjour à tous,
>
> Je veux créer une jointure sur deux tables qui sont dans deux bse de
> données
> différentes???
>
> Ma table "Client" est dans la base de données ouverte
> (C:LaboLabo.mdb)
> ma
> deuxième table "Archive" est sur mon serveur (MLLaboArchLabo.mdb).
>
> Le but est d'affiché le nom des clients à des résultats archivés!!!
>
> Merci à tous











Avatar
CErnst
Normalement, sur des archives ce n'est pas trop important.
De toutes façons, dès que vous avez deux bases pour les données, l'intégrité
référentielle entre les deux doit être traitée par programme...


"Blaise Cacramp" a écrit dans le message de news:
%

Selon : Bonjour ou bonsoir

Excellente idée, mais il y a quand même un hic : on ne sait pas créer un
"respect de l'intégrité"

Cdt, Blaise
---- ---- ----


"CErnst" a écrit dans le message de
news:
Oui Si on veut ramener les données.

Mais sinon on crée une requète Archives :
SELECT * FROM VotreTable IN 'C:RépertoireVotreBase.mdb'; (qui peut se
créer dynamiquement)
et on s'en sert dans une nouvelle requète "Dossiers Archivés" en la
reliant alors à la table clients, "Dossiers Archivés" pouvant dès lors
être consitéré comme une table locale ayant l'avantage de ne pas prendre
de place.



"lauzonmi" a écrit dans le message
de news:
Merci CErnst,

Bien sur (une excellente idée) mais il me semble qu'il manque la
fonction
"Into" pour bien router les informations.

""
SELECT * INTO Nouvel table IN 'C:RépertoireVotreBase.mdb' FROM
VotreTable;
""

Quand penses-tu?


"CErnst" wrote:

On peut très bien faire une requète qui pointe sur une table externe :

SELECT * FROM VotreTable IN 'C:RépertoireVotreBase.mdb';





"lauzonmi" a écrit dans le message
de
news:
> Bonjour à tous,
>
> Je veux créer une jointure sur deux tables qui sont dans deux bse de
> données
> différentes???
>
> Ma table "Client" est dans la base de données ouverte
> (C:LaboLabo.mdb)
> ma
> deuxième table "Archive" est sur mon serveur
> (MLLaboArchLabo.mdb).
>
> Le but est d'affiché le nom des clients à des résultats archivés!!!
>
> Merci à tous