PostgreSQL La base de donnees la plus sophistiquee au monde.

Forums PostgreSQL.fr

Le forum officiel de la communauté francophone de PostgreSQL

Vous n'êtes pas identifié(e).

#1 27/02/2018 15:41:09

Geo-x
Membre

Construction de bases avec vues modifiables

Bonjour @ tous.

J'ai une question d'architecture globale, je suis en train de construire un MCD propre avec liens, tables, clé, index et tutti quanti.

Le MCD en tant que tel n'est pas utilisable par le biais de logiciels tierces, alors ce que je souhaite faire, c'est créer des vues adaptée sur lesquelles l’utilisateur pourrait faire des modifs, de la visu etc...

J'utiliserais la dernière version de Postgres, et pour les vues, j'imagine, qu'étant donné qu'il y a des liaisons, je serai obligé de créer des règles.

Que pensez-vous de cette manière de procéder ? Quelles sont vos expériences sur cette façon de faire ?

Par avance merci de vos retours.

Geo-x

Hors ligne

#2 27/02/2018 15:50:03

gleu
Administrateur

Re : Construction de bases avec vues modifiables

Le manque de détails rend toute réponse assez difficile. La seule généralité que je pourrais donner, c'est qu'utiliser des vues va rendre difficile toute modification, à moins que les vues soient très simplistes.


Guillaume.

Hors ligne

#3 27/02/2018 17:22:28

Geo-x
Membre

Re : Construction de bases avec vues modifiables

Bonjour @☺gleu et merci de votre réponse.
Pour le moment rien n'est définit en tant que tel puisque tout est à construire.
J'ai lu sur le bouquin PostgreSQL "Architecture et notions avancées" (je pense que c'est vous l'auteur ;-) ) que les vues permettant depuis la version 9.3 de mettre à jour directement les tables si la vue n'est pas construite à partir de jointure. Dans mon cas, étant donné que mon MCD sera plutôt réalisé "dans les règles de l'art" il sera plutôt aboutie mais inutilisable d'un point de vue logiciel.
Si je prend un exemple même très simple comme ceci :

180227042510730795.jpg

Et que mon logiciel utilise une table unique contenant le jockey, le cheval et la course, comment cela se passe ? j'imagine que mon cas n'est pas unique.

Geo-x

Hors ligne

#4 27/02/2018 17:36:33

gleu
Administrateur

Re : Construction de bases avec vues modifiables

C'est bien moi, l'auteur de ce livre. Quoique depuis l'écriture de la 2è édition, il y a aussi rjuju.

C'est très difficile de vous répondre sans voir les requêtes que vous voulez utiliser. En tout cas, ce MCD ne me semble pas inutilisable d'un point de vue logiciel (ie, n'importe quel langage de programmation peut en tirer parti).


Guillaume.

Hors ligne

#5 27/02/2018 18:42:42

Geo-x
Membre

Re : Construction de bases avec vues modifiables

Et bien déjà félicitations pour votre livre, c'est très complet et très bien fait.
Pour essayer de compléter mes propos, l'objectif de cette futur base sera notamment de permettre à un utilisateur lambda d'accéder à des informations réunies sous forme de tableau (ex. tableau de gestion d'indicateurs) ou bien sous forme cartographique (ex. cartographie des documents d'urbanisme).

Par exemple si je prend ce MCD :
180227054447611431.jpg

Je peux construire un tableau utilisable par un logiciel tiers :
18022705440156552.jpg
Problème si je souhaite que ce tableau soit modifiable si celui-ci est généré via une vue, comment puis-je faire ?

Geo-x

Hors ligne

#6 27/02/2018 19:05:36

Re : Construction de bases avec vues modifiables

on peut faire des update, insert et delete dans des vues arbitrairement complexes avec autant de jointures que l'on veut avec un trigger

INSTEAD OF INSERT OR DELETE OR UPDATE

sur la view.

Hors ligne

#7 27/02/2018 19:09:58

Geo-x
Membre

Re : Construction de bases avec vues modifiables

Bonjour Michel et merci de votre retour.
Oui c'est bien comme cela que j'ai l'habitude de faire, comme indiqué ce que je souhaite c'est avoir des retours d'expérience sur cette méthode, ou bien s'il existe d'autres façons de faire auquel cas lesquelles ?
Geo-x

Hors ligne

#8 27/02/2018 23:09:22

gleu
Administrateur

Re : Construction de bases avec vues modifiables

Merci pour le livre. Pas de retour d'expérience particulièrement sur les vues en écriture. Tant qu'il n'y a pas besoin d'écrire un trigger, c'est quand même beaucoup plus simple : pas de risque de bugs, pas de problèmes de performances.


Guillaume.

Hors ligne

#9 02/03/2018 13:46:07

Re : Construction de bases avec vues modifiables

j'ai implementé cette méthode sur une table de 400 records jointe à deux autres tables (foreign) avec un front-end access/vba (mon client aime ça).

la vue était une linked table en Access et tout semble aller correctement

cela sera-t-il le cas avec une table de plusieurs milliers de records ?

de toute façon, il faut faire des forms qui sont updatables alors qu'elles sont basées sur des queries multi-tables !

sans le trigger instead of i,u,d, je ne vois comment on pourrait faire

Hors ligne

Pied de page des forums