Requête Ajout dans une base externe protégée
Un bug récurent sur toutes les versions Access continue sur la version 2007. Si vous créez une requête ajout pour sélectionner des enregistrements dans une table de la base active et que vous vouliez les placer dans une table d’une base externe protégée par mot de passe, vous obtenez le message d’erreur suivant : Mot de passe non valide, et la requête ne s’exécute pas.
Cette erreur provient d’une mauvaise construction de l’instruction SQL qui mélange les clauses IN et INTO alors que IN n’a pas lieu d’être:
SQL généré par Access :
INSERT INTO (;PWD=raymond) Table1 ( tél ) IN 'F:/Mes Documents/bd5.mdb'[;PWD=raymond]
SELECT table1.Téléphone
FROM table1;
Bonne construction SQL pour executer l’opération :
INSERT INTO [;database=F:/Mes Documents/bd5.mdb;PWD=raymond].Table1 ( tél )
SELECT table1.Téléphone
FROM table1;
Pour contourner ce bug, la solution consistait à créer une table attachée avec la table externe.
Les caractères slash sont à remplacer par des caractères anti-slash (non affichables ici).
Cette erreur provient d’une mauvaise construction de l’instruction SQL qui mélange les clauses IN et INTO alors que IN n’a pas lieu d’être:
SQL généré par Access :
INSERT INTO (;PWD=raymond) Table1 ( tél ) IN 'F:/Mes Documents/bd5.mdb'[;PWD=raymond]
SELECT table1.Téléphone
FROM table1;
Bonne construction SQL pour executer l’opération :
INSERT INTO [;database=F:/Mes Documents/bd5.mdb;PWD=raymond].Table1 ( tél )
SELECT table1.Téléphone
FROM table1;
Pour contourner ce bug, la solution consistait à créer une table attachée avec la table externe.
Les caractères slash sont à remplacer par des caractères anti-slash (non affichables ici).