Schémas Base de données - Intégration de 2 schémas sur une même base de données

Bonjour,

Nous souhaitons savoir s’il est possible d’avoir une instance Simplicité interfacée avec plusieurs schémas d’une même BDD.
Nous souhaitons pouvoir séparer des tables métiers de tables techniques d’analyses, alimentées par un outil de gestion de qualité de la données.

Cordialement
Jean-Baptiste BLANC

On peut configurer plusieurs datasources comme indiqué ici :
https://docs.simplicite.io/documentation/99-misc/datasources-howto.md

Le nom de la table doit spécifier son emplacement :

MY_PGSQL_DATASOURCE;[<schema name>.]<table name>

Si les tables sont dans 2 schémas d’un même SGBD/datasource et que le user a les droits sur les 2 schémas, on peut surement tout passer par la même accès JDBC, il faut juste ajouter le schéma de la table dans le nom physique de la table de l’objet métier :

[<schema name>.]<table name>

NB: attention si vous mixez des objets métier qui pointent sur des tables de bases techniquement disjointes (ex: un objet A correspond à une table a d’un datasource MySQL et un objet B correspond à une table b d’un datasource PostgreSQL) vous ne pourrez bien entendu pas paramétrer un link de type foreign key.

Pour ce lier genre de d’objets qui persistent dans des mondes techniques hétérogènes (cela vaut aussi pour les objets services) vous devez utiliser des liens “meta objet”.

Le seul cas où les links FK fonctionneront c’est quand on parle de deux tables de deux schemas d’une même base.

Bonjour David, je m’incruste dans la discussion pour clarifier un point sur les objets service-simplicite: je ne trouve pas de documentation sur cette notion de “méta objet” pour créer des relations entre des objets du modèle local et des objets service-simplicite d’une autre instance.

Ce que j’appelle - à tort - “lien meta objet” c’est un attribut de type “Object”:

Qui se présente comme cela:

Physiquement ça stocke <nom de l'objet>:<row ID> d’où l’importance de mapper un “row ID” unique et stable dans le temps quand on paramètre un objet service

1 Like