Postgresql 9.1 Problemas na SQL

9 respostas
renatofox89

:D Oi!

Estou realizado a seguinte consulta no ppostgresql 9.1
SELECT 

CLIENTE.auto,
CLIENTE.razao_social, 
CLIENTE.tel_cont1, 
CLIENTE.tel_cont2, 
CLIENTE.tel_cont3, 
CLIENTE.cpf_cnpj, 
CLIENTE.nome_fantasia, 
CLIENTE.cep, 
CLIENTE.tipo_logradouro, 
CLIENTE.logradouro, 
CLIENTE.complemento, 
CLIENTE.bairro, 
CLIENTE.cidade, 
CLIENTE.email1, 
CLIENTE.email2, 
CLIENTE.email3, 
CLIENTE.insc_estadual_rg, 
CLIENTE.insc_municipal, 
CLIENTE.observacao, 
CLIENTE.uf

FROM CLIENTE;

Mas retorna um erro:

ERRO: relação "cliente" não existe
LINE 24: FROM CLIENTE
^

Alguem tem ideia?

9 Respostas

F

Olá renatofox89.

Provavelmente você está trabalhando com schemas diferentes. Verifique em qual schema se encontra a tabela Cliente e coloque seu nome no prefixo da tabela. Exemplo:

SELECT *
FROM nomeDoSeuEsquema.Cliente;

Abraços

renatofox89

Oi Fabricio, Bom dia!

Só tem o public, eu coloquei mas da:

ERRO: relação “public.cliente” não existe
LINE 24: FROM public.CLIENTE;
^

********** Error **********

renatofox89

Se eu uso o grafic builder,dá certo mas fica assim;

SELECT 
  "CLIENTE".auto, 
  "CLIENTE".razao_social, 
  "CLIENTE".tel_cont1, 
  "CLIENTE".tel_cont2, 
  "CLIENTE".tel_cont3, 
  "CLIENTE".cpf_cnpj, 
  "CLIENTE".nome_fantasia, 
  "CLIENTE".cep, 
  "CLIENTE".tipo_logradouro, 
  "CLIENTE".logradouro, 
  "CLIENTE".complemento, 
  "CLIENTE".bairro, 
  "CLIENTE".cidade, 
  "CLIENTE".email1, 
  "CLIENTE".email2, 
  "CLIENTE".email3, 
  "CLIENTE".insc_estadual_rg, 
  "CLIENTE".insc_municipal, 
  "CLIENTE".observacao, 
  "CLIENTE".uf
FROM 
  public."CLIENTE";

Tem algum jeito + simples d efazer?

H

Assim deveria funcionar.

SELECT 
  cli.auto, 
  cli.razao_social, 
  cli.tel_cont1, 
  cli.tel_cont2, 
  cli.tel_cont3, 
  cli.cpf_cnpj, 
  cli.nome_fantasia, 
  cli.cep, 
  cli.tipo_logradouro, 
  cli.logradouro, 
  cli.complemento, 
  cli.bairro, 
  cli.cidade, 
  cli.email1, 
  cli.email2, 
  cli.email3, 
  cli.insc_estadual_rg, 
  cli.insc_municipal, 
  cli.observacao, 
  cli.uf
FROM 
  cliente cli;
renatofox89

é então, desse jeito é certo,

mas

não funciona !!

irei usar assim:

SELECT "CLIENTE".auto, "CLIENTE".razao_social, "CLIENTE".tel_cont1, "CLIENTE".tel_cont2, "CLIENTE".tel_cont3, "CLIENTE".cpf_cnpj, "CLIENTE".nome_fantasia, "CLIENTE".cep, "CLIENTE".tipo_logradouro, "CLIENTE".logradouro, "CLIENTE".complemento, "CLIENTE".bairro, "CLIENTE".cidade, "CLIENTE".email1, "CLIENTE".email2, "CLIENTE".email3, "CLIENTE".insc_estadual_rg, "CLIENTE".insc_municipal, "CLIENTE".observacao, "CLIENTE".uf FROM public."CLIENTE";

H

Posta o sql de criação da tabela cliente.

Fabiano_Abreu

Olá renatofox89,

Perceba que, quando você coloca aspas no nome da tabela

você esta forçando que o PostgreSQL seja case sensitive, logo, se a tabela tiver sido criada como Cliente ou cliente, você realmente receberá a mensagem de erro.

Espero ter lhe sido útil. Grande abraço.

_ _
Fabiano Abreu
Papo Sql - Um blog com tutoriais, dicas e truques sobre SQL

renatofox89

é verdade vc tem razão,

a tabela tabela tem que ser usada em letra minuscula,

então fica nome da tabela cliente

e a consulta assim:

SELECT c.auto, c.razao_social, c.tel_cont1, c.tel_cont2, c.tel_cont3, c.cpf_cnpj, c.nome_fantasia, c.cep, c.tipo_logradouro, c.logradouro, c.complemento, c.bairro, c.cidade, c.email1, c.email2, c.email3, c.insc_estadual_rg, c.insc_municipal, c.observacao, c.uf FROM cliente c;

OBRIGADO

renatofox89

APENAS MUDEI A MINHA TABELA DE Usuario para usuario,

estava forçando o banco à colocar aspas nas consultas, por isso na jpa não funcionava.

Criado 7 de março de 2012
Ultima resposta 15 de out. de 2012
Respostas 9
Participantes 4