[pgbr-geral] função: como criar series sem que se multipliquem

2011-04-05 Thread Eloi Ribeiro
Ola à lista,

Tenho o seguinte disparador para quando faço um INSERT de um novo registo
(polígono incêndio florestal) me crie 100 pontos regulares noutra tabela.
A dificuldade que encontro é em numerar esses pontos de 1 a 100, porque cada
vez que tento meter um generate_series(1,100) multiplica-me os 100 pontos
pela serie (de 1 a 100) e fico com 1 pontos. Entendo que esse seja o
resultado lógico, embora não o desejado. Alguém tem uma sugestão para que
isto não ocorra?


--DROP TRIGGER trg_escv_incendios_todos_subtablas ON
sch_ambiente.escv_incendios_todos;
--DROP FUNCTION sch_ambiente.trg_escv_incendios_todos_subtablas();

CREATE OR REPLACE FUNCTION sch_ambiente.trg_escv_incendios_todos_subtablas()
  RETURNS trigger AS $BODY$
BEGIN
IF (TG_OP = 'DELETE') THEN
DELETE FROM sch_ambiente.escv_incendios_puntos_muestreo
WHERE fir_code = OLD.fir_code;
 ELSIF (TG_OP = 'UPDATE') OR (TG_OP = 'INSERT') THEN
-- elimina anteriores para evitar repetidos
DELETE FROM sch_ambiente.escv_incendios_puntos_muestreo
WHERE fir_code = NEW.fir_code;
-- Puntos de muestreo
INSERT INTO sch_ambiente.escv_incendios_puntos_muestreo(   -- poi_code ->
CAMPO SERIE DE 1 A 100
fir_code,
fir_name,
geom)
(SELECT
-- generate_series(1,100) -> SERIE DE 1 A 100
NEW.fir_code,
NEW.fir_name,
t1.geom
FROM (SELECT  tx.fir_code,
ST_Setsrid(ST_MakePoint(tx.x, ty.y), 23030) AS geom
FROM
(SELECT NEW.fir_code AS fir_code,
generate_series(
(SELECT cast(ST_XMin(ST_Envelope(geom_23030)) AS int)
FROM sch_ambiente.escv_incendios_todos
WHERE fir_code=NEW.fir_code)+((SELECT cast(sqrt(ST_Area(geom_23030)/100) AS
int)
FROM sch_ambiente.escv_incendios_todos
WHERE fir_code=NEW.fir_code)/2),
(SELECT cast(ST_XMax(ST_Envelope(geom_23030)) AS int)
FROM sch_ambiente.escv_incendios_todos
WHERE fir_code=NEW.fir_code),
(SELECT cast(sqrt(ST_Area(geom_23030)/100) AS int)
FROM sch_ambiente.escv_incendios_todos
WHERE fir_code=NEW.fir_code)) AS x)
AS tx
JOIN
(SELECT NEW.fir_code AS fir_code,
generate_series(
(SELECT cast(ST_YMin(ST_Envelope(geom_23030)) AS int)
FROM sch_ambiente.escv_incendios_todos
WHERE fir_code=NEW.fir_code)+((SELECT cast(sqrt(ST_Area(geom_23030)/100) AS
int)
FROM sch_ambiente.escv_incendios_todos
WHERE fir_code=NEW.fir_code)/2),
(SELECT cast(ST_YMax(ST_Envelope(geom_23030)) AS int)
FROM sch_ambiente.escv_incendios_todos
WHERE fir_code=NEW.fir_code),
(SELECT cast(sqrt(ST_Area(geom_23030)/100) AS int)
FROM sch_ambiente.escv_incendios_todos
WHERE fir_code=NEW.fir_code)) AS y)
AS ty
ON tx.fir_code = ty.fir_code)
AS t1,
sch_ambiente.escv_incendios_todos AS t2
WHERE t2.fir_code = NEW.fir_code
AND (t1.geom && t2.geom_23030)
AND ST_Intersects(t1.geom, t2.geom_23030))
LIMIT 100;
END IF;
RETURN NULL;
END;
$BODY$ LANGUAGE plpgsql;

CREATE TRIGGER trg_escv_incendios_todos_subtablas
AFTER INSERT OR UPDATE OR DELETE ON sch_ambiente.escv_incendios_todos
FOR EACH ROW EXECUTE PROCEDURE
sch_ambiente.trg_escv_incendios_todos_subtablas();

Obrigado,

Eloi Ribeiro
GIS Analyst
39,45º -4,40º
http://eloiribeiro.wordpress.com
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] quantidade de ocorrencia de uma string

2011-04-05 Thread Beto Lima
desta forma não deu certo, talvez tenha explicado mal.
ex: Rua:|João Pereira|344|Centro

preciso contar quantos pipes existem nessa ocorrência. Neste caso 3.
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] quantidade de ocorrencia de uma string

2011-04-05 Thread Emerson Hermann
Beto,


--query 1, com ER, retornando apenas uma linha

 SELECT COUNT(1)
   FROM  regexp_matches('a,b,c,d,a,c', 'a', 'g');

/* Resultado
 count

  2
(1 rows)
*/

--query 2, usandos o padrão da string separado por virgulas

 SELECT x.x[i] , count(*)
   FROM  string_to_array('a,b,c,d,a,c', ',') AS x,
 generate_series(1,array_upper(string_to_array(cast('a,b,c,d,a,c'
as text),','),1)) AS i
GROUP BY 1;

/* Resultado
 x  | count
+---
  b | 1
  c | 2
  d | 1
  a | 2
(4 rows)
*/

Espero ter ajudado.

Emerson Hermann

Em 5 de abril de 2011 09:11, Beto Lima  escreveu:
> desta forma não deu certo, talvez tenha explicado mal.
> ex: Rua:|João Pereira|344|Centro
>
> preciso contar quantos pipes existem nessa ocorrência. Neste caso 3.
>
>
> ___
> pgbr-geral mailing list
> pgbr-geral@listas.postgresql.org.br
> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
>
>
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] quantidade de ocorrencia de uma string

2011-04-05 Thread Fabrízio de Royes Mello
Em 5 de abril de 2011 09:11, Beto Lima  escreveu:

> desta forma não deu certo, talvez tenha explicado mal.
> ex: Rua:|João Pereira|344|Centro
>
> preciso contar quantos pipes existem nessa ocorrência. Neste caso 3.
>
>
Uma alternativa:

postgres@bdteste=# select array_upper(string_to_array('Rua:|João
Pereira|344|Centro', '|'), 1) - 1;
 ?column?
--
3
(1 row)


-- 
Fabrízio de Royes Mello
>> Blog sobre TI: http://fabriziomello.blogspot.com
>> Perfil Linkedin: http://br.linkedin.com/in/fabriziomello
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


[pgbr-geral] livro

2011-04-05 Thread solution network - jaitonys
comprei o livre PostgreSQL guia do programador da novatec
chegou agora, o que vcs acham deste livro ?
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


[pgbr-geral] Comparativos - Implantação.

2011-04-05 Thread CLAUDIO VIANA
Amigos,
Algumas dúvidas,

1- Gostaria de ter acesso a comparativos que tenham sido realizados do
Tipo.
PostgreSQL X Oracle,
PostGreSQL X DB2,
PostGreSQL x MySQL

 e se tem alguma ferramenta para tirar o Banco de Dados do ORACLE para o
POSTGRESQL,(automatica, semi-automatica, manual).

 2- Como funciona a licença do SGBD.

 3 - Custos para Implantação, Migração de ORACLE para POSTGRESQL

 4 - Custos para o Treinamento para DBA e  AD

 5  - Empresa para dar suporte no Rio de Janeiro.

Abraços,

CLAUDIO VIANA
(21) 3411-9516
(21) 8832-2565 - Oi
Skype:claudio.coelho.viana
msn: claudioviana1...@hotmail.com
coelhovi...@gmail.com
cvi...@ig.com.br
claudio.coelho.vi...@oi.com.br

CAMPANHA ANTI-SPAM
Ao repassar mensagens particulares, retire os dados de quem lhe enviou o
email e coloque o(s) destinatário(s)s no campo CCO (com cópia oculta) ou BCC
em inglês, deixando os demais em branco. Desta forma, não só o seu endereço
de email como o de todos com quem se comunica serão preservados.

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


Re: [pgbr-geral] Comparativos - Implantação.

2011-04-05 Thread Leandro DUTRA
2011/4/5 CLAUDIO VIANA :
>     1- Gostaria de ter acesso a comparativos que tenham sido realizados do
> Tipo.
>     PostgreSQL X Oracle,

Não há comparativos diretos, porque a Oracle os proíbe.  O máximo
possível é analisar documentação, e resultados TPC, que também nunca
são diretamente comparáveis.  Quando a Sun ainda existia, chegaram a
publicar alguns que mostravam duas configurações não tão díspares em
que o PostgreSQL era 15% mais lento que o Oracle, num sistema dez
vezes mais barato.  Como já faz algum tempo, eu esperaria que hoje a
diferença de custo fosse ainda maior, e a de desempenho, muito
pequena, nula ou até favorável ao elefante.


>     PostGreSQL X DB2,

Esse será mais difícil, dada a relativamente pouca visibilidade do DB2.


> PostGreSQL x MySQL

Há vários, Google é teu amigo.  Mas nem tem comparação.


>  e se tem alguma ferramenta para tirar o Banco de Dados do ORACLE para o
> POSTGRESQL,(automatica, semi-automatica, manual).

Várias, olhe no http://techdocs.postgresql.org/.


>  2- Como funciona a licença do SGBD.

Ela é curta e simples de ler, melhor trazeres as dúvidas.


>  3 - Custos para Implantação, Migração de ORACLE para POSTGRESQL

Caso-a-caso, contrate uma consultoria.


>  4 - Custos para o Treinamento para DBA e  AD

Procure uma das empresas especializadas, como a Dextra, a 4Linux, a
PgOpen… mas AD não é específico de SGBD.



-- 
skype:leandro.gfc.dutra?chat      Yahoo!: ymsgr:sendIM?lgcdutra
+55 (61) 3546 7191              gTalk: xmpp:leand...@jabber.org
+55 (11) 9406 7191        ICQ/AIM: aim:GoIM?screenname=61287803
BRAZIL GMT-3  MSN: msnim:chat?contact=lean...@dutra.fastmail.fm
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Comparativos - Implantação.

2011-04-05 Thread Fabrízio de Royes Mello
Em 5 de abril de 2011 11:18, Leandro DUTRA
escreveu:

>
> 
>
> Várias, olhe no http://techdocs.postgresql.org/.
>
> 
>
>
O link correto não seria:

http://wiki.postgresql.org

-- 
Fabrízio de Royes Mello
>> Blog sobre TI: http://fabriziomello.blogspot.com
>> Perfil Linkedin: http://br.linkedin.com/in/fabriziomello
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Comparativos - Implantação.

2011-04-05 Thread Fábio Telles Rodriguez
Em 5 de abril de 2011 10:49, CLAUDIO VIANA  escreveu:
> Amigos,
>     Algumas dúvidas,
>
>     1- Gostaria de ter acesso a comparativos que tenham sido realizados do
> Tipo.
>     PostgreSQL X Oracle,
>     PostGreSQL X DB2,
> PostGreSQL x MySQL

Olha, os comparativos que eu conheço por aí são muito ruins. Eu mesmo
já me arrependi de ter escrito algo neste sentido. O que você
encontrar na Internet será vago, tendencioso e ultrapassado.

Alguma coisa +/- confiável pode ser encontrada em:
http://en.wikipedia.org/wiki/Comparison_of_relational_database_management_systems

Mas os critérios podem ser muito vagos.

Meus conselhos:
* Se você está fazendo um trabalho acadêmico: seja mais seletivo no
seu escopo, seu alvo é muito vago.
* Se você está querendo desenvolver uma nova aplicação, defina quais
são os requisitos para o seu banco de dados, depois pesquise quais
suportam os seus requisitos;
* Se você já tem uma aplicação e quer portar ela para PostgreSQL, aí
sim você tem documentação no WIKI em:
http://wiki.postgresql.org/wiki/Converting_from_other_Databases_to_PostgreSQL
>
>  e se tem alguma ferramenta para tirar o Banco de Dados do ORACLE para o
> POSTGRESQL,(automatica, semi-automatica, manual).
>
>  2- Como funciona a licença do SGBD.

A licença é a BSD: http://pt.wikipedia.org/wiki/Licen%C3%A7a_BSD
>
>  3 - Custos para Implantação, Migração de ORACLE para POSTGRESQL

Resposta de consultor: DEPENDE.
>
>  4 - Custos para o Treinamento para DBA e  AD

AD não costuma fazer treinamento específico para um banco de dados,
apesar de eu concordar que o dicionário de dados permite coisas
específicas.

Depende muito da qualificação da sua equipe existente, e do nível que
se precisa atingir. Ou seja: DEPENDE.


>
>  5  - Empresa para dar suporte no Rio de Janeiro.

Procure em: http://www.postgresql.org/support/professional_support_southamerica

 ou solicite ajuda aqui na lista mesmo.

-- 
Atenciosamente,
Fábio Telles Rodriguez
blog: http://www.midstorm.org/~telles/
e-mail / gtalk / MSN: fabio.tel...@gmail.com
Skype: fabio_telles
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


[pgbr-geral] PostgreSQL dbExperts no Windows 2008

2011-04-05 Thread Guilherme Groke
Pessoal, eu sei que esse assunto já surgiu por aqui, mas alguém já
conseguiu implantar o PGSQL da dbExperts no Windows Server 2008?

Estamos para substituir um servidor (que atualmente roda o W2003) que
virá com o W2008, mas até agora não conseguimos fazer funcionar, o
serviço inicia e cai logo em seguida.

Já tentei dezenas de tutoriais que encontrei na internet, mas nada resolveu.

Antes que falem, não temos como substituir o postgres por um mais
novo, o sistema já existe e está implantando, e não tem como migrar de
versão agora.

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


Re: [pgbr-geral] quantidade de ocorrencia de uma string

2011-04-05 Thread Beto Lima
Pessoal muito obrigado mesmo.
deu certo.
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] PostgreSQL dbExperts no Windows 2008

2011-04-05 Thread Leandro DUTRA
2011/4/5 Guilherme Groke :
> Pessoal, eu sei que esse assunto já surgiu por aqui, mas alguém já
> conseguiu implantar o PGSQL da dbExperts no Windows Server 2008?

A dbExperts é a única que tem o código-fonte de sua versão.

Isso dito, parece que ela pirateou o CygWin, então qualquer consultor
que conheça bem (1) MS Windows Server 2008, (2) Cygwin e (3)
PostgreSQL pode te ajudar.  Boa sorte para achar um bicho desses, e
prepara os bolsos…

Claro que, migrando para um SGBD livre como o PostgreSQL padrão, não
haveria problema algum em te ajudarmos, desde que trouxesses mais
informações sobre teu problema.


-- 
skype:leandro.gfc.dutra?chat      Yahoo!: ymsgr:sendIM?lgcdutra
+55 (61) 3546 7191              gTalk: xmpp:leand...@jabber.org
+55 (11) 9406 7191        ICQ/AIM: aim:GoIM?screenname=61287803
BRAZIL GMT-3  MSN: msnim:chat?contact=lean...@dutra.fastmail.fm
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] PostgreSQL dbExperts no Windows 2008

2011-04-05 Thread Israel Teixeira
Guilherme,

precisamos de mais evidencias, tenta identificar logs do postgreSQL e no
visualizador de eventos do windows possíveis falhas e nos manda, com essas
informações poderíamos ter uma ideia do problema e possíveis soluções.

---
๏̯͡๏ Israel Teixeira


Em 5 de abril de 2011 12:13, Leandro DUTRA
escreveu:

> 2011/4/5 Guilherme Groke :
> > Pessoal, eu sei que esse assunto já surgiu por aqui, mas alguém já
> > conseguiu implantar o PGSQL da dbExperts no Windows Server 2008?
>
> A dbExperts é a única que tem o código-fonte de sua versão.
>
> Isso dito, parece que ela pirateou o CygWin, então qualquer consultor
> que conheça bem (1) MS Windows Server 2008, (2) Cygwin e (3)
> PostgreSQL pode te ajudar.  Boa sorte para achar um bicho desses, e
> prepara os bolsos…
>
> Claro que, migrando para um SGBD livre como o PostgreSQL padrão, não
> haveria problema algum em te ajudarmos, desde que trouxesses mais
> informações sobre teu problema.
>
>
> --
> skype:leandro.gfc.dutra?chat  Yahoo!: ymsgr:sendIM?lgcdutra
> +55 (61) 3546 7191  gTalk: xmpp:leand...@jabber.org
> +55 (11) 9406 7191ICQ/AIM: aim:GoIM?screenname=61287803
> BRAZIL GMT-3  MSN: msnim:chat?contact=lean...@dutra.fastmail.fm
>  ___
> pgbr-geral mailing list
> pgbr-geral@listas.postgresql.org.br
> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
>
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] livro

2011-04-05 Thread Rodrigo Della Justina
Também tenho um
mas prefiro usar o help é mais completo, além usar o help de cada versão.

A guia é interessante para quem está entrando no mundo PostgreSQL ajuda
bastante


att
Rodrigo

2011/4/5 solution network - jaitonys 

> comprei o livre PostgreSQL guia do programador da novatec
> chegou agora, o que vcs acham deste livro ?
> ___
> pgbr-geral mailing list
> pgbr-geral@listas.postgresql.org.br
> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
>



-- 
*Atenciosamente*
*
*
*Rodrigo Della Justina*
*rodrigodellajust...@gmail.com*
*rodrigodellajust...@ciss.com.br*
Telp: 55-46-8801-6165

*IBM DB2 Certified Database Academic*
**
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Plano de Execução e Otimização - EXPLAINT

2011-04-05 Thread Flavio Henrique Araque Gurgel
Não escreva EXPLAIN.
Coloque apenas sua consulta e clique no botão Explain do PgAdmin.

Em 1 de abril de 2011 09:26, izana souza torres
 escreveu:
> Nobre colegas, estou usando o PgAdmin3, e executo uma  Query
>
> Explain SELECT * FROM aluno
>
>
>
> Blz ele me mostra o planto de execução e tudo mais na paleta Saída de Dado,
> mas quanto eu
>
> clico na paleta do lato chamada EXPLAIN ele não me mostrar o visual das
> tabelas e como será
>
> feito a execução, pergunto é necessário realizar alguma configuração
> especial no PGadmin3 para
>
> eu conseguir  visualizar isso na paleta EXPLAIN do pgadmin3
>
>
>
> Nesse link e autor faz exatamente o que eu não consigo realizar
>
> http://www.devmedia.com.br/articles/viewcomp.asp?comp=7263
>
>
>
> Muito obrigado.
>
> ___
> pgbr-geral mailing list
> pgbr-geral@listas.postgresql.org.br
> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
>
>
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Dúvida sobre WORK_MEM

2011-04-05 Thread Flavio Henrique Araque Gurgel
>           Apenas para ratificar então, o work_mem é por conexão, mas é um
> limitador apenas, não uma memória préalocada, ok?

O work_mem não é por conexão.
Do manual:
"Note that for a complex query, several sort or hash operations might
be running in parallel; each operation will be allowed to use as much
memory as this value specifies before it starts to write data into
temporary files."
Explica que o work_mem pode ser alocado diversas vezes numa consulta complexa.
Sim, o work_mem é um limite, não é uma alocação imediata.

Minha regra de ouro pra evitar falta de memória num servidor PostgreSQL:
shared_buffers + 2 * work_mem * max_connections + maintenance_work_mem
* autovacuum_max_workers < RAM disponível

Lembrando que "RAM disponível" é o que sobra dela, subtraia aí o que
seu SO precisa pra rodar e outras eventuais aplicações na mesma
máquina.

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


Re: [pgbr-geral] Dúvida sobre WORK_MEM

2011-04-05 Thread Fábio Gibon - Comex System
Valeu Flávio,
 vou comparar sua regra com algumas configurações que costumo fazer.

um abraço
Fábio Gibon
- Original Message - 
From: "Flavio Henrique Araque Gurgel" 
To: "Fábio Gibon - Comex System" ; "Comunidade 
PostgreSQL Brasileira" 
Sent: Tuesday, April 05, 2011 7:55 PM
Subject: Re: [pgbr-geral] Dúvida sobre WORK_MEM


> Apenas para ratificar então, o work_mem é por conexão, mas é um
> limitador apenas, não uma memória préalocada, ok?

O work_mem não é por conexão.
Do manual:
"Note that for a complex query, several sort or hash operations might
be running in parallel; each operation will be allowed to use as much
memory as this value specifies before it starts to write data into
temporary files."
Explica que o work_mem pode ser alocado diversas vezes numa consulta 
complexa.
Sim, o work_mem é um limite, não é uma alocação imediata.

Minha regra de ouro pra evitar falta de memória num servidor PostgreSQL:
shared_buffers + 2 * work_mem * max_connections + maintenance_work_mem
* autovacuum_max_workers < RAM disponível

Lembrando que "RAM disponível" é o que sobra dela, subtraia aí o que
seu SO precisa pra rodar e outras eventuais aplicações na mesma
máquina.

[]s
Flavio

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