[pgbr-geral] DELETE - violates foreign key constraint

2018-03-14 Por tôpico Zan

Boa tarde a todos.

Ao tentar deletar um registro recebo a seguinte mensagem de erro:
ERROR:  update or delete on table "tb_tipos_referencias" violates 
foreign key constraint "tb_referencias_fk_01" on table "tb_referencias"

DETAIL:  Key (id)=(1) is still referenced from table "tb_referencias".

A chave estrangeira criada está como ON DELETE NO ACTION, por isso está 
dando o erro.


Minha dúvida é se tenho como tratar um DELETE antes de executar. Para 
esta tabela é simples tratar, pois é apenas uma tabela de referência. Eu 
estou com a mesma situação para a tabela de usuários, onde no caso nem 
sei contar quantas tabelas fazem referência a mesma.


Qual a melhor maneira de fazer esse tratamento?

Desde já peço desculpa caso a pergunta seja tola. Estou procurando já 
faz um tempo no Google como fazer isso, mas não encontrei nada. Acredito 
não estar fazendo a busca da maneira correta.


Obrigado.

___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Re: [pgbr-geral] Remover caracteres escondido

2017-08-18 Por tôpico Zan

On 18/08/2017 11:22, Manuel Garcia wrote:

Bom dia.

eu tive um problema parecido e resolvi assim.

pegue seu exemplo para testar.

SELECT convert_from('EDERSON DA SILVA\342\200\213'::bytea, 'utf8');

Resultado "EDERSON DA SILVA​"


Manuel, bom dia. Não deu certo, continua aparecendo o "caractere escondido".


___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Re: [pgbr-geral] Remover caracteres escondido

2017-08-18 Por tôpico Zan

On 18/08/2017 10:57, Douglas Fabiano Specht wrote:

bom dia
ja tive esse problema, e utilize a seguinte função.



  --função para substituir caracteres especiais

  CREATE OR REPLACE FUNCTION retira_acentuacao1(p_texto text)
   RETURNS text AS
  $BODY$
  Select translate($1,
  
'áâãäåaaaÁÂÃÄÅAAAèééêëeEEEÉEEìíîïìiiiÌÍÎÏÌIIIóôõöoooÒÓÔÕÖOOOùúûüÙÚÛÜçÇ<>!@#$%¨*()_+={}[]?;:|*~^´`¨æÆø£Øƒªº¿®½¼ßµþýÝ€§¬©¢¥¤ðÐÞÞ¶
 ',  --no final tem tbm o 144 da tabela ascii
  
'áâãaÁÂÃAèééêeeEEEÉEEìíîiìiiiÌÍÎIÌIIIóôõÒÓÔÕùúûuÙÚÛUçÇ
  '
   );
  $BODY$
  LANGUAGE sql VOLATILE
  COST 100;


Douglas, no meu caso não deu certo. Este bendito caractere 
(\342\200\213) é uma "?".


___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

[pgbr-geral] Remover caracteres escondido

2017-08-18 Por tôpico Zan

Bom dia a todos.

Versão do Postgres: PostgreSQL 9.5.8 on x86_64-pc-linux-gnu, compiled by 
gcc (Ubuntu 5.4.0-6ubuntu1~16.04.4) 5.4.0 20160609, 64-bit


Collate da base: pt_BR.UTF-8

Identifiquei alguns registros em uma tabela que quando faço a pesquisa o 
editor me mostra o registro como: EDERSON DA SILVA


Quando eu faço a consulta da seguinte maneira convert_to(a.nome, 'UTF8') 
o resultado é o seguinte: EDERSON DA SILVA\342\200\213


Eu estou fazendo uma consulta com OpenQuery no SQL Server e está me 
retornando erro. Precisava remover estes "caracteres escondidos".


Como posso fazer um "replace" para estes casos?

Obrigado.

___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Re: [pgbr-geral] missing chunk number 0 for toast value 343342964 in pg_toast_2619

2016-10-03 Por tôpico Zan

On 03/10/2016 15:06, ANDRESSA ARAUJO wrote:

Boa tarde,

Provavelmente essa tabela pg_class está com linhas corrompidas.

Encontrei esse blog que talvez ajude:
_http://helkmut.blogspot.com.br/2011/07/postgresql-corrigindo-tabela-corrompida.html_


Andressa, obrigado pela resposta.
Infelizmente o problema está ocorrendo com outras tabelas, como por 
exemplo information_schema.role_table_grants.


Na verdade o problema ocorre com mais de uma tabela interna porém a 
mensagem de erro é sempre a mesma.



___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

[pgbr-geral] missing chunk number 0 for toast value 343342964 in pg_toast_2619

2016-10-03 Por tôpico Zan

Boa tarde a todos.

Versão: PostgreSQL 9.3.4 on x86_64-unknown-linux-gnu, compiled by gcc 
(Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3, 64-bit


Nosso BD não está mais listando algumas tabelas internas do sistema, por 
exemplo, ao fazer select * from pg_class aparece a seguinte mensagem: 
missing chunk number 0 for toast value 343342964 in pg_toast_2619


Alguém pode me dar alguma orientação sobre como resolver este problema?

Obrigado.

___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Re: [pgbr-geral] RES: Hospedagem grátis

2016-08-17 Por tôpico Zan

On 17/08/2016 09:13, Wagner Rogerio Garcia wrote:

Bom dia.

Você poderia usar uma instancia gratuita por 01 ano no AWS (Amazon).
Instala o PostgreSQL, PHP .etc...


WAGNER ROGERIO GARCIA


Obrigado pela dica, darei uma olhada.

___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

[pgbr-geral] Hospedagem grátis

2016-08-17 Por tôpico Zan

Bom dia a todos.

Para meu TCC estou desenvolvendo um sistema para uma ONG em 
Itapetininga/SP e gostaria de hospedar em algum servidor com hospedagem 
grátis durante o desenvolvimento.


Qualquer servidor que tenha uma base PostgreSQL. Se tiver PHP também 
seria bom, mas isso não é essencial.


Poderiam me indicar algum?

Obrigado.

___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Re: [pgbr-geral] Base de dados de CEP do Brasil.

2016-01-05 Por tôpico Zan

On 05/01/2016 09:05, Dickson S. Guedes wrote:

E o metodo "buscaCEP" faz parte desse pacote de serviços.

Então "valer à pena" ao meu ver seria no intuito de valor de investimento, e
não de facilidade. Não vem ao caso se a base deveria ou não ser pública,
utilizar um serviço de terceiro que cobra para disponilar seus dados precisa
estar dentro do âmbito legal.

Somos uma comunidade de Software Livre, e LIVRE significa Liberdade, e quando
vemos algo que poderia ser publico e não é ficamos um pouco chateados claro,
porque pensamos "oras porque isso não é livre?". Muito cuidado com este
"livre"... ele não significa, necessariamente, "de graça".


Eu utilizo o http://postmon.com.br/ e pelo que vi na documentação no 
Gith, é feito uma "request" na 
http://m.correios.com.br/movel/buscaCepConfirma.do e interpretado o retorno.


Não sei dizer neste caso é legalmente errado, mas funciona de boa aqui 
para mim.



---
This email has been checked for viruses by Avast antivirus software.
https://www.avast.com/antivirus


___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

[pgbr-geral] Linked Server do SQL Server

2015-05-13 Por tôpico Zan

Pessoal, boa tarde.

PostgreSQL 9.3.4 on x86_64-unknown-linux-gnu, compiled by gcc 
(Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3, 64-bit.


Preciso fazer uma consulta no PostgreSQL que irá retornar um número de 
colunas dinamicamente, tanto a quantidade como os nomes das colunas são 
variáveis.


Pesquisei e não encontrei nenhuma forma de criar uma consulta que tenha 
um retorno SETOF record dinâmico.


Para tal (não sei se é a melhor solução), criei uma função que monta a 
consulta e grava o resultado em uma tabela temporária. Dessa forma no 
PostgreSQL eu executo a função que cria a tabela temporária (select ou 
do) e depois faço um select na tabela temporária. Está da seguinte maneira:


select portal.sp_produtos_vencer_lojas(2015,5);

select *
from tb_tmp_produtos_vencer_lojas;

Até ai tudo bem. O problema é que vou precisar ler essas informações de 
uma base SQL Server via Linked Server (ODBC).


Estou fazendo da seguinte forma:

SELECT *
FROM OPENQUERY(PostgreSQL05,'
   select portal.sp_produtos_vencer_lojas(2015,5);

   select *
   from tb_tmp_produtos_vencer_lojas;
')

O problema é que o que está retornando para o SQL Server é o resultado 
da primeira consulta e não o select na tabela temporária.


Como posso resolver essa situação?

Obrigado!

___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Tabela em Lock

2015-03-25 Por tôpico Zan

On 24/03/2015 17:19, Matheus de Oliveira wrote:


2015-03-24 12:34 GMT-03:00 Zan
zan...@farmaponte.com.br
mailto:zan...@farmaponte.com.br:

Me lembrei agora que este é o horário de backup da base. Pode ser isso?


Se for um backup pg_dump, com certeza. O pg_dump requer bloqueio usando
um AccessShareLock, o que conflita com o AccessExclusiveLock (na verdade
qualquer um conflita com esse último), requerido pelo seu ALTER TABLE.

Já com um backup físico esse problema não aconteceria.

Esqueci de comentar na outra mensagem, mas você pode usar as consultas
[1] e [2] para verificar com mais detalhes o que está acontecendo.

[1] https://wiki.postgresql.org/wiki/Lock_dependency_information
[2] https://wiki.postgresql.org/wiki/Lock_Monitoring

Atenciosamente,
--
Matheus de Oliveira
Analista de Banco de Dados
Dextra Sistemas - MPS.Br nível F!
www.dextra.com.br/postgres http://www.dextra.com.br/postgres/




Mateus, obrigado pela explicação e pelas dicas.

___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


[pgbr-geral] Tabela em Lock

2015-03-24 Por tôpico Zan
Versão: PostgreSQL 9.3.4 on x86_64-unknown-linux-gnu, compiled by gcc 
(Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3, 64-bit


Boa tarde.

Estou tentando fazer a seguinte alteração na estrutura de uma tabela:
ALTER TABLE portal.tb_tarefa
  ADD COLUMN id_usuario INTEGER;

Esta é uma tabela pequena, com 200 registros, mas o comando não executa. 
Já percebi que algumas vezes quando faço um select em uma tabela com 
transação ativa a tabela fica em Lock, não deixa eu fazer alteração na 
estrutura.


Como saber quem está travando a tabela de alguma forma para impedir que 
seja feita qualquer alteração na tabela?


Obrigado.

___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Tabela em Lock

2015-03-24 Por tôpico Zan

On 24/03/2015 12:31, Zan wrote:

Versão: PostgreSQL 9.3.4 on x86_64-unknown-linux-gnu, compiled by gcc
(Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3, 64-bit

Boa tarde.

Estou tentando fazer a seguinte alteração na estrutura de uma tabela:
ALTER TABLE portal.tb_tarefa
   ADD COLUMN id_usuario INTEGER;

Esta é uma tabela pequena, com 200 registros, mas o comando não executa.
Já percebi que algumas vezes quando faço um select em uma tabela com
transação ativa a tabela fica em Lock, não deixa eu fazer alteração na
estrutura.

Como saber quem está travando a tabela de alguma forma para impedir que
seja feita qualquer alteração na tabela?

Obrigado.



Me lembrei agora que este é o horário de backup da base. Pode ser isso?

___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


[pgbr-geral] Ajuda com Consulta

2015-02-02 Por tôpico Zan

Bom dia a todos.

Tenho uma tabela que registra o afastamento dos funcionários. Esta 
tabela está em linhas, ou seja, um registro para o inicio e um registro 
para a volta do funcionário.


Preciso fazer uma consulta que traga dois campos com o período em que o 
funcionário ficou afastado.
O primeiro registro encontrado seria o campo 1 e o registro seguinte 
(volta) o campo 2. As próximas ocorrências voltaria a ser 1 e 2 na 
sequência.


Tenho os seguintes registros.

Código Data
1  01/01/2014
2  01/02/2014
1  01/02/2014
1  01/03/2014

Preciso ter o seguinte resultado:

Código DataSaida  DataRetorno
1  01/01/2014 01/02/2014
1  01/03/2014
2  01/02/2014

Como posso fazer essa consulta?

Estou utilizando a versão 9.3.4 do PostgreSQL.

Obrigado.

___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


[pgbr-geral] Consulta em conteúdo XML

2015-01-02 Por tôpico Zan

Pessoal, boa tarde.

Versão: PostgreSQL 9.3.4 on x86_64-unknown-linux-gnu, compiled by gcc 
(Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3, 64-bit


Estou me batendo com XML aqui no PostgreSQL e não estou tendo muito sucesso.

Queria fazer uma tabela de histórico de execução de alguns relatórios 
que tenho, no entanto esses relatórios terão alguns campos diferentes. 
Tive a ideia de gravar os resultados em XML, mas não estou conseguindo 
fazer a busca nesse conteúdo XML.


Tenho o seguinte XML:
registros
  linha
filial1/filial
venda100/filial
  /linha
  linha
filial2/filial
venda200/filial
  /linha
/registros

Gostaria de fazer uma query para ter o seguinte resultado:

filial venda
1  100
2  200

Como faço isso?

Obrigado.

___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


[pgbr-geral] Setar nome dos campos

2007-12-11 Por tôpico Thiago Zan
Olá pessoal ... sou novo no forum e é a minha primeira pergunta ...

É o sguinte ...

Quando eu realizo um select e armazeno em uma variavel do tipo record depois 
tem como eu setar o valor desta variavel ... por exemplo ...

select ... in record ...

depois disso quero usar um for de 1..10 para correr os campos ...

tipo digamos que meus campos sejam demanda01, demanda02 demanda03 ... demanda10 
...

dai queria setar o final do nome do campo para usar tudo dentro de um for ... 
ou se existiria alguma forma de fazer isso como por exemplo da numero para as 
colunas que retornam no select ???

Muito obrigado !!!
  ___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral