Évolution liée emplacement de la table par programmation
J'ai une base de données Access avec une table liée dans une seconde base de données, situé dans le même répertoire que le premier.
Je voudrais copier l'intégralité d'un répertoire vers un nouvel emplacement (pour les tests) et d'avoir une base de données encore un lien vers la table dans la base de données de deux, mais le lien est toujours le répertoire d'origine, pas le nouvel emplacement.
J'aimerais faire une de deux choses l'une: soit
-
Faire le lien avec la table dans la base de données de deux de telle manière que le chemin d'accès au dossier est relatif - que le chemin d'accès à la base de données des deux n'est pas codé en dur.
ou
-
Avoir une routine dans le
Form_Load
(ou une macro autoexec) qui vérifie l'application.chemin d'accès et par programme ajuste le lien en conséquence.
Vous devez vous connecter pour publier un commentaire.
Il peut être utile de disposer d'un formulaire de démarrage qui vous permet de parcourir pour le back-end, vous souhaitez une table et des tables qui doivent être reliées. Vous pourriez parcourir la collection de tables, mais je pense que la liste est un peu plus sûr. Après cela, un peu de code est tout ce qui est nécessaire, voici un extrait:
Merci,
Je l'ai utilisé réussie, n'a cependant pas l'utiliser avec le jeu d'enregistrements.
J'ai utilisé usncahill de la solution et l'a modifié pour mes besoins propres. Je n'ai pas assez de réputation afin de voter pour leur solution, donc si vous aimez mon code supplémentaire, veuillez nous voter tous les deux.
Je voulais un moyen rapide pour basculer entre les deux bases de données, l'un contenant les données en direct et l'autre contenant les données de test. J'ai donc modifié le mentionné précédemment code comme suit:
(Le code précédent suppose que la Tester et de Vivre des fichiers de Données sont situés dans le même répertoire et le nom du fichier se termine dans l'Essai et des Données, mais peut être facilement adapté à d'autres chemins/noms de fichiers)
J'appelle TestSwitchDB à partir d'un bouton dans mon avant la fin de DB pour changer rapidement entre les tests et les environnements de production. Mon Accès DB, les contrôles de l'utilisateur de basculer entre les environnements d'utilisateur, de sorte que lorsque l'utilisateur admin se connecte à l'avant la fin de DB, j'utilise le ConnectTestDB directement à la fonction par défaut de l'utilisateur admin pour se connecter à l'essai DB. De même, j', utilisez le ConnectLiveDB fonction lorsque d'autres utilisateurs de connexion pour le front-end.
Il y a aussi une rapide détection d'erreur dans l'TestSwitchDB fonction de me dire si il y a un mélange de connexions à la fois les environnements avant l'appel de la fonction de commutation. Si cette erreur est récurrente, il pourrait être un signe d'autres problèmes.
De notre entreprise, IL a changé la trajectoire de nos fichiers partagés du local à l'entreprise, qui a nécessité de rediriger l'ensemble de nos tables de base de données. Cela aurait été de la douleur, de supprimer et de recréer tous les liens, surtout avec plusieurs bases de données liées. J'ai trouvé cette question, mais ni l'un ni l'autre des réponses a bien fonctionné pour moi. Ce qui suit est ce que j'ai utilisé. Remarque, cela va prendre un certain temps, avec de nombreux tableaux que chaque mise à jour peut prendre quelques secondes.