Pular para conteúdo

Adicionar uma tabela de banco de dados (PostGIS ou Oracle Spatial)

Uma tabela PostGIS ou Oracle Spatial pode ser adicionada por meio do plug-in nas seguintes condições:

Várias conexões semelhantes

Se várias conexões tiverem sido configuradas para bancos de dados com nomes idênticos, é possívelinformar ao plug-in qual conexão usar para acessar os dados armazenados no banco de dados em questão.

Conexão configurada no gerenciador de fontes de dados do QGIS

A primeira maneira de configurar uma conexão com um banco de dados é adicionar uma fonte de dados no QGIS: menu"Camada">"Gerenciador de fonte de dados" > guia"PostgreSQL" ou"Oracle"> clique em"Novo".

Seja um banco de dados Oracle ou PostgreSQL, para que uma conexão possa ser usada pelo plug-in Isogeo, o nome de usuário e a senha devem ter sido inseridos e armazenados:

Somente para bancos de dados PostgreSQL

Você pode inserir o nome de um serviço no campo"Service" do formulário usado para criar uma nova conexão com o banco de dados (veja a captura de tela acima).

Esse serviço deve ter sido especificado em um arquivo de configuração pg_service.conf.

O local do arquivo pg_service.conf deve ser salvo em uma variável de ambiente "PGSERVICEFILE" configurada no sistema operacional e no QGIS. Para configurar a variável no QGIS: menu"Preferências" >"Opções..." > guia "Sistema" > item "PGSERVICEFILE" > guia"Sistema" > seção"Ambiente"> marque "Usar variáveis personalizadas..." > clique em > clique em "+".

Conexão configurada no arquivo _user\db_connections.json

A segunda maneira de configurar uma conexão com um banco de dados é inserir as informações de conexão no arquivo db_connections.json na pasta _user no diretório de instalação do plug-in do QGIS Isogeo:

  • no seguinte local no Windows: C:\Users\%userprofile%AppData\Roaming\QGIS\QGIS3\profiles\default\python\plugins\isogeo_search_engine_user\db_connections.json
  • e no Ubuntu: /home/%userprofile%/.local/share/QGIS/QGIS3/profiles/default/python/plugins/isogeo_search_engine/_user/db_connections.json.

Verifique o conteúdo do arquivo _user/db_connections.json

Se o arquivo parecer não ser levado em conta pelo plug-in, reserve um tempo para verificar se ele foi preenchido com informações válidas. Você também pode usar essa ferramenta (ou uma equivalente) para verificar se o conteúdo do arquivo está em conformidade com as especificações do formato JSON.

Além de estar em conformidade com as especificações do formato JSON, para ser levado em conta pelo plug-in Isogeo, esse arquivo deve :

  • contêm um único objeto com as duas chaves a seguir:
    • Oráculo
    • PostgreSQL
  • cada uma dessas chaves deve ter o valor de uma lista que pode ser :
    • vácuo
    • ou composto de objeto(s) com as seguintes chaves :
      • connection_name o nome da conexão; ele deve ser exclusivo; cada conexão deve ter um nome diferente
      • host o host onde o banco de dados está hospedado
      • porta a porta de conexão da base
      • banco de dados nome do banco de dados
      • nome de usuário nome do usuário usado para fazer login
      • senha senha do usuário usada para fazer login
      • database_alias chave opcional apresentada logo após

Somente para bancos de dados Oracle

Às vezes, é necessário adicionar uma entrada database_alias.

Quando o valor do campo "Resource location" (Localização do recurso) nos registros de metadados for diferente do nome do banco de dados, a entrada database_alias deverá ser preenchida com o valor do campo"Resource location" (Localização do recurso) no registro de metadados.

{
    "Oracle" : [
        {
            "connection_name" : "Nom de la connexion Oracle (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" : []
}

O conteúdo padrão do arquivo _user\db_connections.json é o seguinte (nenhuma conexão está configurada):

{
    "Oracle" : [],
    "PostgreSQL" : []
}

Dê uma olhada nos exemplos abaixo.

Exemplos do conteúdo do arquivo _user/db_connections.json

Configuração de uma única conexão com um banco de dados PostgreSQL :

{
    "Oracle" : [],
    "PostgreSQL" : [
        {
            "connection_name" : "Nom de la connexion A (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"
        }
    ]
}

Configure 2 conexões com bancos de dados PostgreSQL e 1 conexão com um banco de dados Oracle:

{
    "Oracle" : [
        {
            "connection_name" : "Nom de la connexion A (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 B (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 C (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"
        }
    ]
}