Ir para conteúdo
  • 0

Erro em conexão com banco Postgres


Pergunta

  • Alunos
Postado

Bom dia Pessoal. Estou conectando em um banco Postgres na Azure e esta me retornando o erro:

image.png.2a4bcb79011336221d14f4bddbb065a4.png

 

O Script é este: 

image.png.3ed77b6db91e6c8c28758695f98ae761.png
 

 

O nome da tabela no banco é este: image.png.18b4a0e8e92e41df4bfcd2b61917c721.png

Pesquisei o erro e comentaram que pode ser devido a tabela no banco esta sendo nomeado com letra maiuscula.Mas nõa consegui resolver.

Desde já agradecido

4 respostass a esta questão

Posts Recomendados

  • 1
  • Alunos
Postado

Pessoal. Consegui a solução.

Se a tabela tiver nomeada com maisuculo que é o meu caso tem que colocar com aspas duplas 2 vezes conforme abaixo:
E no meu caso precisei colocar o schema tbm
 

let
    Comando =  ("
    SELECT 
        id,
        empresa
    FROM ""CMH"".""dimEmpresa""
    "),
    Fonte = PostgreSQL.Database("cmh-dev-rg.postgres.database.azure.com", "postgres",[Query = Comando])

    in Fonte

 

  • 0
  • Alunos
Postado

Oi @Valmir Braz!

Esse select roda normalmente no seu banco? Esse CMH é um schema, assim como o DBO no SQLServer?

Se não tentou apenas com o nome da tabela, sem esse "cmh." eu tentaria, pois o erro indica, aparentemente, que está sendo buscada uma tabela com nome "cmh.dimempresa" e não apenas "dimempresa".

Numa consulta SQLServer se eu colocasse "dbo.dimempresa", ao ler a tabela com certeza criticaria apenas "dimempresa" e não "dbo.dimempresa", isso que achei estranho no erro.

Pode ser que no Postgre seja diferente e se for, pode ignorar minha resposta, sem problemas 🙂

  • 0
  • Alunos
Postado

Obrigado por responder @Michele

Ja tentei de tudo a respeito da escrita do nome da tabela. Com schema ,sem schema . maiusculo minusculo ,com aspas sem aspas  kkk

Pelo que pesquisei no stackoverflow (https://stackoverflow.com/questions/26631205/postgresql-error-42p01-relation-table-does-not-exist) ,para o Postgres considerar letras maiúsculas em nome de tabelas (dimEmpresa , no meu caso ) tem que colocar o nome da tabela entre aspas "dimEmpresa" . 

Porem quando escrevo o nome da tabela com aspas "dimEmpresa"  no editor avançado do PQ da erro.

image.png.446e84a410cbc655225b5399cdf0e898.png




 

 

  • Like 1
  • 0
  • Alunos
Postado

Oi @Valmir Braz!

Te recomendo colocar esse post lá no Discord para a galera que manja mais de PQ e ETL, alguém já deve ter sofrido com isso e poderá te ajudar de forma mais assertiva.

Será que essas aspas no PQ teriam que ser duplas, assim como precisamos colocar no SQL? rs Ou ainda colocar em aspas simples aí no PQ, porque daí quando vai para o banco vai com aspas simples, não sei o Postgre, mas o SQLServer precisariam ser aspas simples e não duplas.

Espero que consiga resolver logo!

Faça login para comentar

Você vai ser capaz de deixar um comentário após fazer o login



Entrar Agora
×
×
  • Criar Novo...