Bonjour à tous,
Je ne sais pas si le meilleur endroit pour poser ma question ou si il vaudrait mieux la poser dans le forum Access, vous me direz .
Donc voilà j'ai une base postgres sur laquelle je travaille liée à une interface QGIS pour la partie géographique. Pour une visualisation plus simple pour les utilisateurs je dois développé une interface utilisateur. Pour cela je suis parti sur Access.
Du coup pour commencer j'ai créé une base vide, puis est ouvert mon ODBC ce qui m'a ramener toutes les tables :
Ensuite lorsque j'ai crée une requête de base avec le code suivant :
Et là tout fonctionne sans problème.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 SELECT c.ident, nc.id_conception FROM public_siea_s_fibrvue_v_ca_assemble_cable c LEFT JOIN public_suivi_non_conformites nc ON c.ident = nc.cable;
Ensuite j'ai voulu commencer à utiliser des fonctions de postgres du type right(), st_intersects(), st_dwithin(), st_startpoint(), st_endpoint(), etc. Et là Access me sort des erreurs de syntaxe. De ce que j'ai compris de mes recherches c'est parce que c'est fonction ne sont pas connues d'Access donc son interpréteur ne sait pas comment les traiter.
Du coup j'ai essayé de passer par une requête en SQL direct, si j'ai bien compris avec cette solution Access n'essai plus d'interprété le code mais l'envoi directement au serveur qui lui le traite et retourne le résultat.
J'ai donc fait un test avec la même requête simple mais en virant les "public_" devant mes tables et ca fonctionne :
SELECT c.ident, nc.id_conception
FROM siea_s_fibrvue_v_ca_assemble_cable c
LEFT JOIN suivi_non_conformites nc ON c.ident = nc.cable;
Donc pour finir j'ai de nouveaux inclus des fonctions de postgres et là ça ne marche pas :
select c.ident as ident,
com.commune as commune,
com.postal as postal,
com.insee as insee
from siea_s_fibrvue_v_ca_assemble_cable c
left join liste_communes com on right(c.insee,5) = com.insee;
Auriez-vous une idée de comment je peux faire pour appeler des fonctions postgres dans Access ?
Partager