![]() |
| Le forum de référence en programmation et développement. Articles, cours et tutoriels du débutant au chef de projet et DBA confirmé. | |||||||
|
|||||||
| Contribuez Access : Vos contributions. Postez ici vos codes sources, conseils, astuces et autres propositions. Ce forum n'est pas un forum technique mais destiné aux contributions pour www.developpez.com |
![]() |
|
|
Outils de la discussion |
|
|
#1 (permalink) |
|
Membre éprouvé
![]() Date d'inscription: mai 2004
Localisation: Racour (province de Liège)
Messages: 487
|
J'ai une DB qui reprend des données au jour le jour. En fin de mois, je sauve une copie de ma DB afin d'avoir des chiffres figés. Ma DB en "production" est elle mise-à-jour et pourrait l'être en rétro.
Parfois, je dois lancer une application sur ma DB en production parfois je dois lancer l'application sur une DB figée. Le code ci-dessous me permet de changer la connexion d'une table pour aller sur une DB. Un autre exemple d'utilisation serait d'avoir une DB en développement et, une fois l'application développée et testée; migrer la DB vers un environnement en production; ceci en changeant simplement les liens. Remarque : j'ai simplifié le code. Il y aurait lieu de vérifier l'existence de la table ainsi que du fichier référencé par sConnect. Code :
Public Function SetConnectString(ByVal sTable As String, ByVal sConnect As String) As Boolean Dim bReturn As Boolean With Currentdb ' Don't process system table If Not (.TableDefs(sTable).Attributes And dbSystemObject) Then If (.TableDefs(sTable).Connect <> "") Then Err.Clear On Error Resume Next .TableDefs(sTable).Connect = ";DATABASE=" & sConnect ' And refresh the table link (mandatory) .TableDefs(sTable).RefreshLink bReturn = (Err.Number = 0) On Error GoTo 0 End If ' If (.TableDefs(sTable).Connect <> "") Then End If End With On Error GoTo 0 ZSetConnectString = bReturn End Function Dernière modification par cavo789 ; 20/06/2007 à 07h11 |
|
|
|
|
|
#2 (permalink) |
![]() |
Bonjour Christophe,
merci pour ton code. moi je préfère utiliser l'attribut dbAttachedTable de la table car il se peut que la bdd possède des tables non liées autre point intérréssant à faire c'est de lister les tables attachées, modifier la liaison puis d'enlever la table de la liste, ceci permet lors d'un problème de savoir quelle tables ont été liées (bonne idée tof' voici le code que j'utilise http://dolphy35.developpez.com/artic...eseaux/#LVII-ADolphy
__________________
Initiation au VBA d'Outlook Je ne réponds pas aux questions techniques par MP
|
|
|
|
![]() |
![]() |
||
[Sources] SetConnectString - Change la connexion d'une table
|
||
| Outils de la discussion | |
|
|