Ajouter une table de Base de données (PostGIS ou Oracle Spatial)¶
Une table PostGIS ou Oracle Spatial pourra être ajoutée via le plugin dans les conditions suivantes :
- La fiche documentant la table a été créée à partir du Scan FME Isogeo.
-
La connexion à la base de données dans laquelle elle se trouve a été configurée au choix :
Plusieurs connexions similaires
Si plusieurs connexions ont été configurées pour des bases de données dont le nom est identique, il est possible d'indiquer au plugin la connexion a utiliser pour accéder aux données stockées dans la base concernée.
Connexion configurée dans le gestionnaire des sources de données de QGIS ¶
En indiquant mot de passe et nom d'utilisateur et en choisissant de les stocker (pour les bases de données Oracle et PostGIS) :
Pour les bases de données PostgreSQL uniquement
Il est possible d'indiquer le nom d'un service dans le champ "Service" du formulaire de création d'une nouvelle connexion à une base de données (voir capture ci-dessus).
Ce service doit avoir été spécifié dans un fichier de configuration pg_service.conf
.
L'emplacement du fichier pg_service.conf
doit avoir être enregistré dans une variable d'environnement "PGSERVICEFILE" configurée dans l'OS et dans QGIS (Menu "Préférences" > "Options..." > onglet "Système" > Rubrique "Environnement" > bouton "+").
Connexion configurée dans le fichier db_connections.json
du dossier _user
¶
Emplacement du fichier db_connections.json
C:\Users\%userprofile%\AppData\Roaming\QGIS\QGIS3\profiles\default\python\plugins\isogeo_search_engine\_user\db_connections.json
/home/%userprofile%/.local/share/QGIS/QGIS3/profiles/default/python/plugins/isogeo_search_engine/_user/db_connections.json
En inscrivant les informations de connexion dans le fichier _user/db_connections.json
qui se trouve dans le répertoire d'installation du plugin QGIS Isogeo.
Exemples de contenu du fichier _user/db_connections.json
Configurer une seule connexion à une base de données PostgreSQL :
{
"Oracle" : [],
"PostgreSQL" : [
{
"connection_name" : "Nom de la connexion (il doit être unique)",
"host" : "hôte",
"port" : "port",
"database" : "nom de la base de données",
"username" : "nom d'utilisateur",
"password" : "mot de passe de l'utilisateur"
}
]
}
Configurer 2 connexions à des bases de données PostgreSQL et 1 connexion à une base de données Oracle :
{
"Oracle" : [
{
"connection_name" : "Nom de la connexion (il doit être unique)",
"host" : "hôte",
"port" : "port",
"database" : "nom de la base de données",
"username" : "nom d'utilisateur",
"password" : "mot de passe de l'utilisateur"
}
],
"PostgreSQL" : [
{
"connection_name" : "Nom de la connexion (il doit être unique)",
"host" : "hôte",
"port" : "port",
"database" : "nom de la base de données",
"username" : "nom d'utilisateur",
"password" : "mot de passe de l'utilisateur"
},
{
"connection_name" : "Nom de la connexion (il doit être unique)",
"host" : "hôte",
"port" : "port",
"database" : "nom de la base de données",
"username" : "nom d'utilisateur",
"password" : "mot de passe de l'utilisateur"
}
]
}
Dans le cas des bases de données Oracle, il est parfois nécessaire de rajouter une entrée database_alias
. Lorsque la valeur du champ "Emplacement de la ressource" des fiches de métadonnées est différente du nom de la base de données, il faut renseigner l'entrée database_alias
en indiquant la valeur du champ "Emplacement de la ressource" de la fiche de métadonnées.
{
"Oracle" : [
{
"connection_name" : "Nom de la connexion (il doit être unique)",
"host" : "hôte",
"port" : "port",
"database" : "nom de la base de données",
"database_alias" : "emplacement de la ressource",
"username" : "nom d'utilisateur",
"password" : "mot de passe de l'utilisateur"
}
],
"PostgreSQL" : []
}
Vérifier le contenu du fichier _user/db_connections.json
Si cette option semble ne pas fonctionner, prenez le temps de vérifier que le fichier a été rempli avec des informations valides. Vous pouvez également utiliser ce site (ou un équivalent) pour vérifier que le contenu du fichier JSON est conforme aux spécifications.