[pgbr-geral] RES: Mitos sobre PostgreSQL

2016-06-28 Por tôpico Rubens José Rodrigues
> Senhores, estou preparando uma palestra sobre PostgreSQL e gostaria de
pedir uma mãozinha do pessoal aqui... Quais os maiores mitos que vocês >
conhecem sobre PostgreSQL?

Por ser open source não presta.

Não há suporte suficientemente abrangente que garanta funcionamento 24x7.



__ Informação do ESET Endpoint Security, versão da vacina 13719
(20160628) __

A mensagem foi verificada pelo ESET Endpoint Security.

Mensagem de email - esta OK

http://www.eset.com


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

[pgbr-geral] Abordagem PL/SQL para atualização de custos.

2016-05-18 Por tôpico Rubens José Rodrigues
Bom dia,

Estou paralisado

Estrutura das entidades:

--> Produtos (contendo insumos e produtos compostos)
Codigo (varchar PK)|Descricao (varchar)|CustoUC (numeric)|Tipo (integer = 0
insumo / 1 = Produto Composto)

--> Componentes (contendo os insumos e produtos que compõem produto
principal)
CodigoProduto|CodigoProdPrincipal|Qtde|

- Produto do tipo insumo pode compor um produto qualquer
- Produto do tipo composto, pode conter um insumo e/ou outro produto
composto

Grifo que na entidade Produtos, há uma coluna chamada CustoUC (custo de
ultima compra), neste caso, eu atualizo este valor através de rotinas
especificas e funciona bem quando eu trato apenas dos insumos.

Eu estou tomando um "nó", na hora de tratar dos produtos compostos, vejamos
o exemplo abaixo:

Produtos
Codigo |Descricao|CustoUC |Tipo|
PC0001|Prod.Composto 001| 0| 1|
PC0002|Prod.Composto 002| 0| 1|
PC0003|Prod.Composto 003| 0| 1|
IN0001 |Insumo 001 | 1| 0|
IN0002 |Insumo 002 | 2| 0|
IN0003 |Insumo 003 | 3| 0|
IN0004 |Insumo 004 | 4| 0|
IN0005 |Insumo 005 | 5| 0|

Componentes
CodigoProduto|CodigoProdPrincipal|Qtde|
IN0001 | PC0001   |1  |
IN0002 | PC0001   |1  |
IN0003 | PC0001   |1  |
PC0002| PC0001   |2  |
IN0003 | PC0002   |1  |
IN0004 | PC0002   |1  |
IN0005 | PC0002   |1  |

Neste caso demonstrado o produto composto de código PC0001, contém insumos e
outro produto composto de código PC0002.

Minha dúvida é como chegar ao custoUC dos produtos compostos sabendo este
mesmo produto composto pode conter "N" produtos compostos, sabendo que estes
mesmos produtos compostos dependendo da forma que for montado a procedure
pode ainda não ter seu custoUC preenchido.

Será que me fiz entender!?

Obrigado,

At.

   Rubens José Rodrigues


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

[pgbr-geral] Abordagem correto de select para ter o retorno esperado

2016-01-27 Por tôpico Rubens José Rodrigues
Senhores(as), boa tarde!

O seguinte SELECT [i] me dá o resultado esperado para a primeira etapa,
todavia preciso numa segunda etapa obter o resultado conforme anexo.

Eu tentei usar Window Function sem sucesso, na verdade nem sei se é adequado
para isso. Eu consegui usando um função, porém acho que pode haver uma forma
direta.

Será que podem me ajudar?

[i] http://pastebin.com/05U1aP3x


Obrigado,

At.

Rubens José Rodrigues




__ Informação do ESET Endpoint Security, versão da vacina 12935
(20160127) __

A mensagem foi verificada pelo ESET Endpoint Security.

Mensagem de email - esta OK
grid_com_resultado.txt - esta OK

http://www.eset.com

Premissa: 

Havendo na mesma campanha e condição varios elementos, o que devemos mostrar 
é o item de mais vendido



Resultado da Operação:

CODCET  DESCATITE   CODPROD SEQ 
ORIGEM  CODCATITE   NUMCONDICAO CODCTI  VALOR   CAMPANHA
-
1669698 NESCAFE DLC GST Esp Inso 16Cap3x128g XQ 120885812   
CAMPANHAS   120885811   30101   2729.71 StarD Dolce 
Gusto
1669698 NESCAFE DLC GST Nestea Peh 16Cap 3x96gXQ121174402   
CAMPANHAS   121174401   30101   115.34  StarD Dolce 
Gusto
1669698 NESC DOLCE GUSTO Capp 16Cap 3x200g N1XQ 121200682   
CAMPANHAS   121200681   30101   2719.87 StarD Dolce 
Gusto
1669698 NESCAFE DLC GST Chococino16Cap3x270gN1XQ121200702   
CAMPANHAS   121200702   30101   2037.31 StarD Dolce 
Gusto
1669698 NESC DOLCE GUSTO Espresso 16Cap3x96gN1XQ121200722   
CAMPANHAS   121200722   30101   3483.62 StarD Dolce 
Gusto
1669698 NESC DLC GST CafeAuLait 16Cap3x160g XQ  121480642   
CAMPANHAS   121480643   30101   2060.57 StarD Dolce 
Gusto
1669698 NESCDLCGST Caffe Buongiorno16Cap3x144gXQ121520562   
CAMPANHAS   121520563   30101   2585.90 StarD Dolce 
Gusto
1669698 NESC DLCGST MarrakeshStTe16Cap3x116 8gXQ122579112   
CAMPANHAS   122579113   30101   1203.72 StarD Dolce 
Gusto

Resultado Esperado:

CODCET  DESCATITE   CODPROD SEQ 
ORIGEM  CODCATITE   NUMCONDICAO CODCTI  VALOR   CAMPANHA
-
1669698 NESCAFE DLC GST Esp Inso 16Cap3x128g XQ 120885812   
CAMPANHAS   120885811   30101   2729.71 StarD Dolce 
Gusto
1669698 NESC DOLCE GUSTO Espresso 16Cap3x96gN1XQ121200722   
CAMPANHAS   121200722   30101   3483.62 StarD Dolce 
Gusto
1669698 NESCDLCGST Caffe Buongiorno16Cap3x144gXQ121520562   
CAMPANHAS   121520563   30101   2585.90 StarD Dolce 
Gusto
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

[pgbr-geral] RES: Dúvida com SQL

2015-10-22 Por tôpico Rubens José Rodrigues
>> De: pgbr-geral [mailto:pgbr-geral-boun...@listas.postgresql.org.br] Em
nome de Matheus de Oliveira
>>Enviada em: quinta-feira, 22 de outubro de 2015 15:16

>Por favor, ajude-me dizendo como eu poderia "marcar" o elemento agrupado
>(campanha, codcet, numcondicao) de maior valor.

>Observe abaixo que criei uma coluna "Atendido" para ilustrar como seria o
>resultado esperado, ela não existe na entidade, mas se for necessário posso
>cria-la (pois é uma tabela temporária).

>CAMPANHACODCET  NUMCONDICAO CODCATITE   VALOR
>ATENDIDO
>Caldo 168g  2163250 1   122490925971.00
>SIM
>Caldo 168g  2163250 1   122490912512.33
>NAO
>Caldo 168g  3531694 1   1224909255269.56
>SIM
>Caldo 168g  3531694 1   1224909114596.32
>NÃO

>>Você quer que o de maior valor tenha ATENDIDO = 'S', certo?
>>Nesse caso você pode usar window function com subconsulta:
>>SELECT
>>t.campanha, t.codcet, t.numcondicao, t.codcatite, t.valor,
>>CASE
>>WHEN (row_number() OVER(PARTITION BY t.campanha, t.codcet,
t.numcondicao ORDER BY t.valor DESC)) = 1 THEN 'SIM'
>>ELSE 'NAO'
>>END AS atendido
>>FROM sua_tabela t;

>>Se quiser conhecer mais sobre window functions, eu escrevi um artigo sobre
isso há um tempo atrás [1][2], espero que esteja claro.
>>No exemplo acima eu usei a função ROW_NUMBER para enumerar as linhas de
forma decrescente, ou seja, o de maior valor recebe 1, o segundo maior 2, e
assim por diante. Daí >>peguei o que era igual a 1, garantidamente o de
maior valor.
>>Um problema desse método é que se tiver dois itens empatados com o maior
valor, apenas um será marcado de forma aleatória. Caso queira marcar ambos,
basta simplesmente usar a >>função RANK ao invés da ROW_NUMBER.

>> [1] http://dextra.com.br/window-functions-no-postgresql-parte1/
>> [2] http://dextra.com.br/window-functions-no-postgresql-parte-2/


>>Atenciosamente,
>>Matheus de Oliveira

Obrigado, assunto resolvido!



__ Informação do ESET Endpoint Security, versão da vacina 12449
(20151022) __

A mensagem foi verificada pelo ESET Endpoint Security.

Mensagem de email - esta OK

http://www.eset.com


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

[pgbr-geral] Dúvida com SQL

2015-10-22 Por tôpico Rubens José Rodrigues
Boa tarde!

Cenário:
PostgreSQL 9.4.4 on x86_64-unknown-linux-gnu, compiled by gcc (Ubuntu
4.9.2-10ubuntu13) 4.9.2, 64-bit

Por favor, ajude-me dizendo como eu poderia "marcar" o elemento agrupado
(campanha, codcet, numcondicao) de maior valor.

Observe abaixo que criei uma coluna "Atendido" para ilustrar como seria o
resultado esperado, ela não existe na entidade, mas se for necessário posso
cria-la (pois é uma tabela temporária).

CAMPANHACODCET  NUMCONDICAO CODCATITE   VALOR
ATENDIDO
Caldo 168g  2163250 1   122490925971.00
SIM
Caldo 168g  2163250 1   122490912512.33
NAO
Caldo 168g  3531694 1   1224909255269.56
SIM
Caldo 168g  3531694 1   1224909114596.32
NÃO

Obrigado,

At.

Rubens J Rodrigues




__ Informação do ESET Endpoint Security, versão da vacina 12449
(20151022) __

A mensagem foi verificada pelo ESET Endpoint Security.

Mensagem de email - esta OK

http://www.eset.com


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

[pgbr-geral] Servidor não sobe: FATAL: could not access file "powa": Arquivo ou diretório não encontrado

2015-09-08 Por tôpico Rubens José Rodrigues
Bom dia!

Não consigo subir o servidor após uma atualização do S.O.

Cenário:
Dell R710
16GB Ram
Raid 10 (5 discos SSD + 5 Discos SAS 15k)
Linux batux 3.19.0-25-generic #26-Ubuntu SMP Fri Jul 24 21:17:31 UTC 2015
x86_64 x86_64 x86_64 GNU/Linux
PostgreSQL 9.4.4

Manualmente tento subir o servidor com o comando:

/usr/lib/postgresql/9.4/bin/postgres -d 3 -D /var/lib/postgresql/9.4/main -c
config_file=/etc/postgresql/9.4/main/postgresql.conf

Recebo a mensagem:

2015-09-08 07:15:52 BRT [3839]: [1-1]  DEBUG:  postgres: PostmasterMain:
initial environment dump:
2015-09-08 07:15:52 BRT [3839]: [2-1]  DEBUG:
-
2015-09-08 07:15:52 BRT [3839]: [3-1]  DEBUG:   LC_PAPER=pt_BR
2015-09-08 07:15:52 BRT [3839]: [4-1]  DEBUG:   XDG_SESSION_ID=23
2015-09-08 07:15:52 BRT [3839]: [5-1]  DEBUG:   LC_ADDRESS=pt_BR
2015-09-08 07:15:52 BRT [3839]: [6-1]  DEBUG:   LC_MONETARY=C
2015-09-08 07:15:52 BRT [3839]: [7-1]  DEBUG:   SHELL=/bin/bash
2015-09-08 07:15:52 BRT [3839]: [8-1]  DEBUG:   TERM=xterm
2015-09-08 07:15:52 BRT [3839]: [9-1]  DEBUG:   LC_NUMERIC=C
2015-09-08 07:15:52 BRT [3839]: [10-1]  DEBUG:  USER=postgres
2015-09-08 07:15:52 BRT [3839]: [11-1]  DEBUG:  LC_TELEPHONE=pt_BR
2015-09-08 07:15:52 BRT [3839]: [12-1]  DEBUG:
MAIL=/var/mail/postgres
2015-09-08 07:15:52 BRT [3839]: [13-1]  DEBUG:
PATH=/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games
2015-09-08 07:15:52 BRT [3839]: [14-1]  DEBUG:
LC_IDENTIFICATION=pt_BR
2015-09-08 07:15:52 BRT [3839]: [15-1]  DEBUG:  PWD=/
2015-09-08 07:15:52 BRT [3839]: [16-1]  DEBUG:  LANG=pt_BR.UTF-8
2015-09-08 07:15:52 BRT [3839]: [17-1]  DEBUG:  LC_MEASUREMENT=pt_BR
2015-09-08 07:15:52 BRT [3839]: [18-1]  DEBUG:  SHLVL=1
2015-09-08 07:15:52 BRT [3839]: [19-1]  DEBUG:
HOME=/var/lib/postgresql
2015-09-08 07:15:52 BRT [3839]: [20-1]  DEBUG:  LANGUAGE=pt_BR:pt:en
2015-09-08 07:15:52 BRT [3839]: [21-1]  DEBUG:  LOGNAME=postgres
2015-09-08 07:15:52 BRT [3839]: [22-1]  DEBUG:  LC_CTYPE=pt_BR
2015-09-08 07:15:52 BRT [3839]: [23-1]  DEBUG:  LC_TIME=C
2015-09-08 07:15:52 BRT [3839]: [24-1]  DEBUG:  LC_NAME=pt_BR
2015-09-08 07:15:52 BRT [3839]: [25-1]  DEBUG:
OLDPWD=/var/lib/postgresql
2015-09-08 07:15:52 BRT [3839]: [26-1]  DEBUG:
_=usr/lib/postgresql/9.4/bin/postgres
2015-09-08 07:15:52 BRT [3839]: [27-1]  DEBUG:
PGLOCALEDIR=/usr/share/locale
2015-09-08 07:15:52 BRT [3839]: [28-1]  DEBUG:
PGSYSCONFDIR=/etc/postgresql-common
2015-09-08 07:15:52 BRT [3839]: [29-1]  DEBUG:
LC_COLLATE=pt_BR.UTF-8
2015-09-08 07:15:52 BRT [3839]: [30-1]  DEBUG:
LC_MESSAGES=pt_BR.UTF-8
2015-09-08 07:15:52 BRT [3839]: [31-1]  DEBUG:
-
2015-09-08 07:15:52 BRT [3839]: [32-1]  DEBUG:  find_in_dynamic_libpath:
trying "/usr/lib/postgresql/9.4/lib/pg_stat_statements"
2015-09-08 07:15:52 BRT [3839]: [33-1]  DEBUG:  find_in_dynamic_libpath:
trying "/usr/lib/postgresql/9.4/lib/pg_stat_statements.so"
2015-09-08 07:15:52 BRT [3839]: [34-1]  DEBUG:  loaded library
"pg_stat_statements"
2015-09-08 07:15:52 BRT [3839]: [35-1]  DEBUG:  find_in_dynamic_libpath:
trying "/usr/lib/postgresql/9.4/lib/powa"
2015-09-08 07:15:52 BRT [3839]: [36-1]  DEBUG:  find_in_dynamic_libpath:
trying "/usr/lib/postgresql/9.4/lib/powa.so"
2015-09-08 07:15:52 BRT [3839]: [37-1]  FATAL:  could not access file
"powa": Arquivo ou diretório não encontrado
2015-09-08 07:15:52 BRT [3839]: [38-1]  DEBUG:  shmem_exit(1): 0
before_shmem_exit callbacks to make
2015-09-08 07:15:52 BRT [3839]: [39-1]  DEBUG:  shmem_exit(1): 0
on_shmem_exit callbacks to make
2015-09-08 07:15:52 BRT [3839]: [40-1]  DEBUG:  proc_exit(1): 1 callbacks to
make
2015-09-08 07:15:52 BRT [3839]: [41-1]  DEBUG:  exit(1)
2015-09-08 07:15:52 BRT [3839]: [42-1]  DEBUG:  shmem_exit(-1): 0
before_shmem_exit callbacks to make
2015-09-08 07:15:52 BRT [3839]: [43-1]  DEBUG:  shmem_exit(-1): 0
on_shmem_exit callbacks to make
2015-09-08 07:15:52 BRT [3839]: [44-1]  DEBUG:  proc_exit(-1): 0 callbacks
to make


De fato, não encontro o arquivo/pasta *powa* e *powa.so*.

Como devo proceder nessa abordagem?



   Rubens José Rodrigues





__ Informação do ESET Endpoint Security, versão da vacina 12219
(20150908) __

A mensagem foi verificada pelo ESET Endpoint Security.

Mensagem de email - esta OK

http://www.eset.com


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

[pgbr-geral] PLPyton3: C:/Program Files/PostgreSQL/9.4/lib/plpython3.dll

2015-03-17 Por tôpico Rubens José Rodrigues
Bom dia!

Estou com uma enorme dificuldade para instalar a extensão plpython (2 e 3)
para rodar no PostgreSQL, segue abaixo meu cenário.


Sistema: Windows 7 64b devidamente atualizado
Usuário com poderes administrativos logado.

PG: PostgreSQL 9.4.1, compiled by Visual C++ build 1800, 64-bit
Local padrão da instalação:  C:\Program Files\PostgreSQL\9.4\

Python: 3.4.3 -- Instalado e com variáveis de sistema e patch configurados

DLL plpython3.dll: C:\Program Files\PostgreSQL\9.4\lib   Do servidor,
ou seja na instalação padrão do PG

Ao tentar executar:
-- create extension plpython3u

ERROR: could not load library C:/Program
Files/PostgreSQL/9.4/lib/plpython3.dll: The specified module could not be
found.
SQL state: XX000

Saida do meu pg_template:

tmplname  tmpltrusted   tmpldbacreate tmplhandler
tmplinlinetmplvalidator tmpllibrary
tmplacl
plpythonu False False
plpython_call_handler plpython_inline_handler   plpython_validator
$libdir/plpython2
plpython2uFalse False
plpython2_call_handlerplpython2_inline_handler
plpython2_validator   $libdir/plpython2
plpython3uFalse False
plpython3_call_handlerplpython3_inline_handler
plpython3_validator   $libdir/plpython3

Pesquisei na internet e tentei algumas opções como por exemplo, copiar e
renomear o arquivo python3.dll para python32.dll na pasta lib.

Tenho esse ambiente funcionando em Linux, todavia, já é minha quarta
tentativa de implementar um ambiente de testes com Windows / PG / PLPython
sem sucesso.

Poderiam me orientar?

Obrigado,

At.

Rubens José Rodrigues




__ Informação do ESET Endpoint Security, versão da vacina 11333
(20150317) __

A mensagem foi verificada pelo ESET Endpoint Security.

Mensagem de email - esta OK

http://www.eset.com


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


[pgbr-geral] RES: Schemes vantagens

2015-01-28 Por tôpico Rubens José Rodrigues
 

As vantagens são além da qual você ja citou e que talvez seja a maior
'Organização', é a também a facilidade de dar permissão em todas as tabelas
de um único squema.
Agora dividir assim como você falou vai depender de como a sua aplicação vá
se comportar em com relação a isso.
Normalmente os squemas são divididos em módulos da sua aplicação (que por
um acaso podem ter o nome dos departamentos),  ou squemas com tabelas do
sistemas, squema com os cadastros, squema com a movimentação e assim vai.
Glauco, aproveitando a sua explicação, caso eu tenha um schema para
cadastros e outro para movimentações, ao montar consultas que relacionem
tabelas dos schemas diferentes, tenho que colocar de forma explícita o nome
dos schemas na consulta?




Sim, deve ser informado antes do nome da tabela o squema, você pode ter
tabelas com o mesmo nome mais em squemas diferentes.
Att Glauco

Search Path?

http://www.postgresql.org/docs/9.4/static/ddl-schemas.html
-- 5.7.3



__ Informação do ESET Endpoint Security, versão da vacina 11085
(20150128) __

A mensagem foi verificada pelo ESET Endpoint Security.

Mensagem de email - esta OK

http://www.eset.com


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


[pgbr-geral] RES: RES: Envio de email

2015-01-12 Por tôpico Rubens José Rodrigues
Eu uso essa em pl/python e me atende bem, mas meu ambiente é *UX, nunca usei em 
ambiente MS.

 

http://pastebin.com/7G1BmnEs

 

IMHO, o melhor. Apesar de não achar que isso deveria ser obrigação do SGDB.

 

É preciso ter a linguagem Python instalada (PL/Python).

 

 

 

   Rubens José Rodrigues

  Analista de Sistemas

 

 

De: pgbr-geral [mailto:pgbr-geral-boun...@listas.postgresql.org.br] Em nome de 
Santiago - NSR
Enviada em: segunda-feira, 12 de janeiro de 2015 11:53
Para: 'Comunidade PostgreSQL Brasileira'
Assunto: [pgbr-geral] RES: Envio de email

 

O pg_mail, funciona ?...instalei uma vez e não consegui fazer funcionar.

 

Santiago Cuello

 

tele11 2601-6161 - Escritorio

celular11 9.9946 1431 - VIVO 

celular 11 9.8526 7466 - TIM

skype02santiagonsr

 

 

De: pgbr-geral [mailto:pgbr-geral-boun...@listas.postgresql.org.br] Em nome de 
Fábio Telles Rodriguez
Enviada em: segunda-feira, 12 de janeiro de 2015 11:37
Para: Comunidade PostgreSQL Brasileira
Assunto: Re: [pgbr-geral] Envio de email

 

A maioria das pessoas ou mandam e-mail utilizando uma ferramenta externa como 
um shell script ou utilizam o PL de sua preferência.

 

2015-01-09 17:29 GMT-02:00 Marcelo Florindo marceloflori...@gmail.com:

Boa tarde colegas,

Alguém aqui envia email através do postgres???


Grato a todos,

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





 

-- 

Atenciosamente,

Fábio Telles Rodriguez

blog: http:// http://www.midstorm.org/~telles/ s 
http://tellesr.wordpress.com/ avepoint.blog.br

e-mail / gtalk / MSN: fabio.tel...@gmail.com

Skype: fabio_telles

 

Timbira - A empresa brasileira de Postgres

http://www.timbira.com.br 



__ Informa��o do ESET Endpoint Security, vers�o da vacina 10999 
(20150112) __

A mensagem foi verificada pelo ESET Endpoint Security.

Mensagem de email - esta OK
image001.jpg - esta OK
image002.jpg - esta OK
image003.jpg - esta OK
Anexo sem titulo 04021.sql - esta OK

http://www.eset.com


__ Informação do ESET Endpoint Security, versão da vacina 11000 
(20150112) __

A mensagem foi verificada pelo ESET Endpoint Security.

Mensagem de email - esta OK
Anexo sem titulo 04021.sql - esta OK
image003.jpg - esta OK
image002.jpg - esta OK
image001.jpg - esta OK

http://www.eset.com



__ Informação do ESET Endpoint Security, versão da vacina 11000 
(20150112) __

A mensagem foi verificada pelo ESET Endpoint Security.

Mensagem de email - esta OK
image007.jpg - esta OK
image006.jpg - esta OK
image005.jpg - esta OK

http://www.eset.com

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


[pgbr-geral] http://blogs.enterprisedb.com/2014/06/24/message-to-sql-server-users-everything-youve-been-told-is-wrong/

2014-06-30 Por tôpico Rubens José Rodrigues
PSC

Rubens José Rodrigues




__ Informação do ESET Endpoint Security, versão da vacina 10022
(20140630) __

A mensagem foi verificada pelo ESET Endpoint Security.

http://www.eset.com


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


[pgbr-geral] RES: [OFF-TOPIC] Normalização de dados.

2014-05-30 Por tôpico Rubens José Rodrigues
Não existe o certo ou errado, existe a necessidade x possiblidade x
facilidade.

Mas no meu ponto de vista o *ideal* e teórico (entendimento meu na
normalização 3FN(i)), seria uma tabela para esse e outros atributos que por
ventura possam ou não existir.


(i) - Uma entidade está na 3FN, se e somente se, estiver na 2FN e todos os
atributos (colunas) não chave, forem mutuamente independentes, isto é, não
há dependência funcional entre elas, e todas dependem única e exclusivamente
da chave primária de forma irredutível.


   Rubens José Rodrigues

De: pgbr-geral [mailto:pgbr-geral-boun...@listas.postgresql.org.br] Em nome
de Luis Eduardo Bueno
Enviada em: sexta-feira, 30 de maio de 2014 14:43
Para: c...@morenarh.com.br; Comunidade PostgreSQL Brasileira
Assunto: Re: [pgbr-geral] [OFF-TOPIC] Normalização de dados.


Particularmente, se já esta em produção e se a tabela tiver muitos
registros, eu faria em outra tabela.
Se for pequena e a quantidade de consulta for relatiivamente pequena,
deixaria na mesma tabela mesmo.

Att,
Luis


Em 30 de maio de 2014 10:24, C.P.D. - T.I. MoRHena c...@morenarh.com.br
escreveu:
Prezados,

Sou analista de sistemas desenvolvedor e preciso criar dois atributos dentro
de uma tabela já existente. Acontece que para estes dois atributos
[varchar=30] cerca de 70% dos seus lançamentos o valor será nulo. A questão
que me deixa em dúvida é, crio estes dois campos na tabela já existente
mesmo sabendo do alto percentual de registros com o valor nulo ou crio uma
nova tabela relacionada a esta já existente com apenas estes dois atributos
?

Abraços,

Olavo Jr.

---
Este email está limpo de vírus e malwares porque a proteção do avast!
Antivírus está ativa.
http://www.avast.com

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



__ Informação do ESET Endpoint Security, versão da vacina 9870
(20140530) __

A mensagem foi verificada pelo ESET Endpoint Security.

http://www.eset.com


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


[pgbr-geral] RES: RES: [OFF] PostgreSQL incomoda a M$

2013-12-20 Por tôpico Rubens José Rodrigues
 


 …o gerenciador gráfico para SQL Server é realmente muito bom. O
 banco de dados fica na mão dos DBAs mais fraquinhos, e isso é uma
vantagem
 no ambiente corporativo, que não pode pagar milhares de reais por um DBA
de
 verdade.

Não quer…

Mas uma coisa não podemos negar, em essência, conhecer as entranhas é bem
mais difícil que ter tudo “mastigado” como a MS costuma entregar. Obviamente
que as corporações se valem (e se fiam de verdade) que um DBA MSSql Server
tem vida mansa devido ao baixo custo cerebral (de conhecimento) envolvido na
função de admin. de dados, dba etc... e por isso pagam na sua maioria menos
que um DBA PostgreSQL.

Só lembrando que na maioria dos casos o DBA PostgreSQL não é apenas o rapaz
(tem moças ai rsrsrsrs? ) do banco de dados, ele na verdade é o carinha que
vai subir o sistema operacional, fazer tunning do S.O., escolher hardware
etc. Já na MS é cada um no seu quadrado, e isso encarece bastante no fim das
contas.

Enfim, esse tipo de matéria mostra-me bem mais que simplesmente um
comparativo lúdico, mostra-me que o elefante está no caminho certo, que a
comunidade de conhecimento compartilhado é mais forte que a equipe fechada
(mesmo com todo o investimento deles) e que eles tem de criar muitos
diferenciais  e, em muitos casos fora dos padrões, para se manterem de pé!

Vida que segue.



__ Informação do ESET Endpoint Security, versão da vacina 9196
(20131220) __

A mensagem foi verificada pelo ESET Endpoint Security.

http://www.eset.com

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


[pgbr-geral] RES: [OFF] PostgreSQL incomoda a M$

2013-12-19 Por tôpico Rubens José Rodrigues
2013/12/19 Lucio Chiessi [VORio] postgre...@vorio.com.br:

 Ou seja, ou eles estão por fora ou estão tendenciosos...

Ambos.  Como quase todo mundo.

E ou o pico dum Iceberg (leia-se desespero ou preocupação) ?



__ Informação do ESET Endpoint Security, versão da vacina 9193
(20131219) __

A mensagem foi verificada pelo ESET Endpoint Security.

http://www.eset.com


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


[pgbr-geral] RES: Usuários do SGBD PostgreSQL no ES

2013-05-23 Por tôpico Rubens José Rodrigues
Opa às ordens!

-Mensagem original-
De: pgbr-geral [mailto:pgbr-geral-boun...@listas.postgresql.org.br] Em nome
de Albino B Neto
Enviada em: quarta-feira, 22 de maio de 2013 15:26
Para: pgbr-geral@listas.postgresql.org.br
Assunto: [pgbr-geral] Usuários do SGBD PostgreSQL no ES

Oi

Sou usuário do SGBD PostgreSQL.

Queria saber sobre usuários daqui do estado ES ? Quem sabe podemos realizar
um PGDay. :-)

  Albino
___
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


[pgbr-geral] Dúvida : Lista OFF?

2013-01-08 Por tôpico Rubens José Rodrigues
Não tenho recebido e-Mails, problemas ou recesso da galera?

Att
Rubens José Rodrigues



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


[pgbr-geral] Dúvida : Transformar cadeia de caracteres em elementos num vetor

2012-12-05 Por tôpico Rubens José Rodrigues
Olá pessoal!

Tenho um atributo do tipo varchar(4) em que pode conter valores do tipo
'12','23','34','24','1234' etc. Tudo tem um significado, e, nesse caso
significam plano de visitas  semanais.

Minha necessidade:

a) Transformar essa cadeia de caracteres em vetor de inteiros para me
facilitar nas consultas, exemplo : '12' = [1,2].
b) Como saber se  1 está presente em [1,2,3,4]

Verifiquei isso em :

http://hype-free.blogspot.com.br/2008/05/converting-rows-records-to-and-from
.html

http://postgresql.1045698.n5.nabble.com/Converter-para-integer-td2031535.htm
l

Mas não obtive êxito.

Obrigado

Att
Rubens José Rodrigues

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


[pgbr-geral] RES: Cross Table

2012-08-31 Por tôpico Rubens José Rodrigues
Osvaldo Kussama
2012/8/30, Marcelo Silva marc...@ig.com.br:
 Tem como criar uma cross tables simples no postgres?

 Ou seja, trazer o result de um select em colunas

 Select descricao from Tabela

 Result
   descricao1
   descricao2
   descricao3
   etc


 Mas mostrar o Result assim:

 descricao1, descricao2, descricao3, etc


 Veja crosstab no módulo tablefunc:
 http://www.postgresql.org/docs/current/interactive/tablefunc.html

Tempos atrás eu tentei usar essa função [I] que vem no tablefunc, todavia me
esbarrei no problema abaixo, será que alguém consegue me ajudar?

Versão : PostgreSQL 9.0.5 on x86_64-pc-linux-gnu, compiled by GCC
gcc-4.4.real (Ubuntu 4.4.3-4ubuntu5) 4.4.3, 64-bit


/* Código */
create table teste(nome varchar(10), data date, qtde int);
insert into teste values ('RUBENS',CURRENT_DATE,1);
insert into teste values ('RUBENS',CURRENT_DATE+1,2);
insert into teste values ('RUBENS',CURRENT_DATE-1,3);
insert into teste values ('LEO',CURRENT_DATE,1);
insert into teste values ('LEO',CURRENT_DATE+1,2);
insert into teste values ('LEO',CURRENT_DATE-1,3);

select *
  from crosstab('select nome,data,qtde from teste order by nome') 
  as buteco(nome varchar(10),data date,qtde integer)

Erro : 
Function Scan on crosstab ct  (cost=0.00..10.00 rows=1000 width=46)
LOG:  duração: 0.054 ms  comando: SET DateStyle TO 'ISO'
ERRO:  return and sql tuple descriptions are incompatible

[I] http://www.postgresql.org/docs/9.0/interactive/tablefunc.html

Obrigado,

Rubens J Rodrigues

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


[pgbr-geral] RES: RES: Cross Table

2012-08-31 Por tôpico Rubens José Rodrigues
 Matheus de Oliveira

 

 Tempos atrás eu tentei usar essa função [I] que vem no tablefunc, todavia
me

 esbarrei no problema abaixo, será que alguém consegue me ajudar?

 

 Versão : PostgreSQL 9.0.5 on x86_64-pc-linux-gnu, compiled by GCC

 gcc-4.4.real (Ubuntu 4.4.3-4ubuntu5) 4.4.3, 64-bit

 

 

 /* Código */

 create table teste(nome varchar(10), data date, qtde int);

 insert into teste values ('RUBENS',CURRENT_DATE,1);

 insert into teste values ('RUBENS',CURRENT_DATE+1,2);

 insert into teste values ('RUBENS',CURRENT_DATE-1,3);

 insert into teste values ('LEO',CURRENT_DATE,1);

 insert into teste values ('LEO',CURRENT_DATE+1,2);

 insert into teste values ('LEO',CURRENT_DATE-1,3);

 

 select *

  from crosstab('select nome,data,qtde from teste order by nome')

  as buteco(nome varchar(10),data date,qtde integer)

 

 Erro :

 Function Scan on crosstab ct  (cost=0.00..10.00 rows=1000 width=46)

 LOG:  duração: 0.054 ms  comando: SET DateStyle TO 'ISO'

 ERRO:  return and sql tuple descriptions are incompatible

 

 Qual o resultado que você está esperando? Não dá pra adivinhar pelo que
escreveu, mas eu diria o seguinte:

 

 postgres=# select *

  from crosstab('select nome,data,qtde from teste order by 1,2')

  as buteco(nome varchar(10),hoje int,amanha int,depois_amanha int);

 

  nome  | hoje | amanha | depois_amanha 

 +--++---

 LEO  |3 |  1 | 2

 RUBENS |3 |  1 | 2

 (2 rows)

 

 

Obrigado pela resposta.

Minha idéia de resultado seria :

 

NOME   | '30/08/2012'  | '31/08/2012' | '01/09/2012'   

LEO | 3| 1   |
2

RUBENS| 3| 1   |
2

 

 

Rubens

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


[pgbr-geral] RES: RES: Lista e site fora

2012-08-13 Por tôpico Rubens José Rodrigues
+1

 

De: pgbr-geral-boun...@listas.postgresql.org.br
[mailto:pgbr-geral-boun...@listas.postgresql.org.br] Em nome de Saulo Morais
Lara
Enviada em: segunda-feira, 13 de agosto de 2012 17:00
Para: 'Comunidade PostgreSQL Brasileira'
Assunto: [pgbr-geral] RES: Lista e site fora

 

Eu tbm fiquei sem receber emails do dia 7 pra cá. Hoje está normal.

 

De: pgbr-geral-boun...@listas.postgresql.org.br
[mailto:pgbr-geral-boun...@listas.postgresql.org.br] Em nome de Matheus de
Oliveira
Enviada em: segunda-feira, 13 de agosto de 2012 16:28
Para: Comunidade PostgreSQL Brasileira
Assunto: Re: [pgbr-geral] Lista e site fora

 

 

2012/8/13 Leonardo Carneiro chesterma...@gmail.com

Pessoa, foi só eu ou a lista e o site postgresql.org.br ficou fora desde o
dia 7?

 


Pra mim está normal, pelo menos hoje.

--
Matheus de Oliveira 

 

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


[pgbr-geral] RES: Dúvida sobre permissões

2012-02-24 Por tôpico Rubens José Rodrigues
Obrigado pela interação!

 Estou com uma dúvida sobre permissões e talvez até mesmo do conceito 
 de papéis, e para ilustrar eu postei o seguinte código:

 http://pastebin.com/NzJ1Y4AD

 Minha necessidade é:

 a) criar vários grupos
 b) criar vários usuários
 c) criar permissões para os grupos
 d) deixar que os usuários herdem dos grupos as permissões conforme 
 nossa necessidade

Essa idéia é ótima!
Facilita muito a administração.

E muito, não tenham dúvidas!
Enfrentamos nesse momento um problema aqui na empresa, onde esse controle
era via aplicação + ldap e agora vai mudar, tudo porque estamos finalmente
substituindo um excelente Oracle por um excelente PostgreSQL.

 Minhas dúvidas são:

 a)  O papel/grupo chamado grupo_super foi criado como superuser, e 
 pelo que eu entendi o superuser não precisa de permissões, ou seja ele 
 poderia fazer tudo select, update, delete, criar papeis, criar 
 usuários, database, triggers, schemas etc..., ou estou errado!?

A flag superuser é, como o nome diz, uma flag.
Se ela estiver setada, todas as outras permissões existentes serão
simplesmente ignoradas. Quem tiver essa flag (role de usuário ou de grupo,
tanto faz) tem acesso a tudo, e a fazer qualquer coisa.
Se a flag for desligada, todas as permissões ordinárias existentes serão
respeitadas.

Aí é que está! Mesmo eu não informando ordinariamente as permissões ou seja
apenas usando o  atributo superuser do grupo_suporte e do usuário_super, e
ao entrar no psql exemplo e tentar um select em qualquer tabela, recebo a
informação de ...denied


 b) Na linha 48, eu coloquei o papel usuario_super como membro para 
 grupo_super, logo, ele não deveria herdar as permissões do papel 
 grupo_super?

Sim.


 c) A pergunta acima é devido ao fato de que, após essa associação, eu 
 pensei que ao entrar no psql por exemplo, como o usuário 
 usuario_super, por esse ter herdado o atributo de superuser ele 
 poderia fazer tudo sem ter que explicitamente dizer o que, certo!?

Certo.
Mas não funcionou apenas usando o código da linha 48 do código e sim após
rodar:
alter role usuário_super set role grupo_super .


 d) O comando grant all on schema.entidade to papel é diferente de 
 alter role  set role y ?

Não conheço ALTER ROLE  SET ROLE .
A cláusula SET do ALTER ROLE serve para parâmetros de configuração.
Uai, talvez aqui esteja o meu ponto crítico, pois o comando alter role
usuário_super set role grupo_super *teoricamente* estaria associando
imediatamente a role grupo_suporte na sessão e daí passa a funcionar a
herança desejada.


 e) Eu não consigo usar o comando alter role xxx set role yyy, zzz, 
 tem alguma forma!?

Simplesmente, não existe.
O que você quer fazer exatamente?
Eu desejo associar a vários grupos um usuário de uma única vez, porém com o
comando alter role xxx set role yyy somente permite uma única associação
pelo menos é que eu percebi na prática.

[]s
Flavio Gurgel
___
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


[pgbr-geral] RES: RES: Dúvida sobre permissões

2012-02-24 Por tôpico Rubens José Rodrigues
Obrigado!

Ficou claro para mim que os atributos pertencem ao objeto e, somente a ele
irá ser processado sem repassar para os membros.

On 24-02-2012 07:06, Rubens José Rodrigues wrote:
 Aí é que está! Mesmo eu não informando ordinariamente as permissões 
 ou seja apenas usando o  atributo superuser do grupo_suporte e do 
 usuário_super, e ao entrar no psql exemplo e tentar um select em 
 qualquer tabela, recebo a informação de ...denied
 

Você está confundindo permissões com atributos (vide o manual [1]).
Atributos [2] (por ex., superuser, createrole, createdb não são herdados);
permissões [3] podem ser (vide [4]).

 b) Na linha 48, eu coloquei o papel usuario_super como membro para 
 grupo_super, logo, ele não deveria herdar as permissões do papel 
 grupo_super?


 Sim.


Não. Não confundam atributos com permissões.

 Eu desejo associar a vários grupos um usuário de uma única vez, porém 
 com o comando alter role xxx set role yyy somente permite uma única 
 associação pelo menos é que eu percebi na prática.
 


Vide comando GRANT [3]. O comando é: GRANT ROLE foo TO bar.


[1] http://www.postgresql.org/docs/current/static/user-manag.html
[2] http://www.postgresql.org/docs/current/static/role-attributes.html
[3] http://www.postgresql.org/docs/current/static/sql-grant.html
[4] http://www.postgresql.org/docs/current/static/role-membership.html


-- 
   Euler Taveira de Oliveira - Timbira   http://www.timbira.com.br/
   PostgreSQL: Consultoria, Desenvolvimento, Suporte 24x7 e Treinamento
___
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


[pgbr-geral] Dúvida sobre permissões

2012-02-23 Por tôpico Rubens José Rodrigues
Pessoal, boa tarde!

Estou com uma dúvida sobre permissões e talvez até mesmo do conceito de
papéis, e para ilustrar eu postei o seguinte código:

http://pastebin.com/NzJ1Y4AD

Minha necessidade é:

a) criar vários grupos
b) criar vários usuários
c) criar permissões para os grupos
d) deixar que os usuários herdem dos grupos as permissões conforme nossa
necessidade


Minhas dúvidas são:

a)  O papel/grupo chamado grupo_super foi criado como superuser, e pelo
que eu entendi o superuser não precisa de permissões, ou seja ele poderia
fazer tudo select, update, delete, criar papeis, criar usuários, database,
triggers, schemas etc..., ou estou errado!?

b) Na linha 48, eu coloquei o papel usuario_super como membro para
grupo_super, logo, ele não deveria herdar as permissões do papel
grupo_super? 

c) A pergunta acima é devido ao fato de que, após essa associação, eu pensei
que ao entrar no psql por exemplo, como o usuário usuario_super, por esse
ter herdado o atributo de superuser ele poderia fazer tudo sem ter que
explicitamente dizer o que, certo!?

d) O comando grant all on schema.entidade to papel é diferente de alter
role  set role y ?

e) Eu não consigo usar o comando alter role xxx set role yyy, zzz, tem
alguma forma!?


Obrigado,

Att

Rubens J Rodrigues

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


[pgbr-geral] RES: Novo documento governamental? (Era: REPLICAÇÃO, HA E LOAD-BALANCING)

2012-02-16 Por tôpico Rubens José Rodrigues
Em nome de Leandro Guimarães Faria Corce DUTRA:

 Não, ouvi apenas sussurros e brincadeiras na rede, parece que RG, 
 CPF e algo mais serão substituidos pelo CU, ainda não sei a origem 
 da sigla, e talvez seja /hoax/, se assim for, me desculpem, se não 
 for, seja qual sigla for usada será um avanço, pois temos muitos 
 números e nenhum nos identifica realmente, seria bom no mundo real
 e uma discussão a menos quanto a chaves artificias/naturais para 
 pessoas físicas.

É um projeto ditatorial e antigo.  Espero que fracasse.  E, aliás, creio que 
os benefícios seriam ilusórios: sempre haverá estrangeiros, indocumentados…

Logo, voltamos a boa e velha chave natural!
Muitos a veem como dilema, outros como solução e outros como complemento.


Att.

Rubens José Rodrigues




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


[pgbr-geral] Dúvida Modelagem : papéis/usuários x associação com entidades

2012-02-02 Por tôpico Rubens José Rodrigues
Olá pessoal,

Gostaria que criticasse meu ponto de vista, como segue:

 Associar um papel/usuário do PostgreSQL a uma entidade Pessoa Clientes,
Fornecedores, Funcionários etc..., nosso DBA principal, insiste na idéia de
que ele criaria uma entidade usuários, onde a cada criação, alteração ou
exclusão ele replicaria e associaria essa informação com os papéis do banco.

Eu insisti em dizer que no meu ponto de vista, poderíamos associar a
pg_shadow a essa entidade.

Uma dificuldade que eu vejo seria apenas o modelo relacional sendo
prejudicado quando usamos o catalogo do sistema, como por exemplo, quando
apagarmos um papel, alterarmos etc...

Para melhor entendimento do domínio do problema:
Extender o sistema centralizado de segurança, onde todos os colaboradores
tenham acesso as diferentes partes do sistema web e desktop, onde cada
papel/usuário terá suas permissões controladas pelo SGDB, sem ferir o modelo
relacional

Vocês poderiam me ajudar compatilhando suas críticas e idéias!?

Obrigado antecipadamente,

Att
Rubens José Rodrigues



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


[pgbr-geral] RES: Dúvida Modelagem : papéis/usuários x associação com entidades

2012-02-02 Por tôpico Rubens José Rodrigues
2012/2/2 Rubens José Rodrigues rubens.rodrig...@batistarepresentacoes.com:

  Associar um papel/usuário do PostgreSQL a uma entidade Pessoa 
 Clientes, Fornecedores, Funcionários etc..., nosso DBA principal, 
 insiste na idéia de que ele criaria uma entidade usuários, onde a cada 
 criação, alteração ou exclusão ele replicaria e associaria essa informação 
 com os papéis do banco.

Replicaria como?

Gatilho na entidade usuário, após apagar um usuário estender usando drop role 
, como por exemplo.


 Eu insisti em dizer que no meu ponto de vista, poderíamos associar a 
 pg_shadow a essa entidade.

Idealmente, sim.  Aliás, o mais ideal ainda (!?) seria usar o /information 
schema/.

Fato

A dificuldade é que o PostgreSQL tem uma limitação arbitrária, não permitindo 
a declaração de chaves sobre visões — e, portanto, impedindo a criação de 
restrições de integridade referenciais sobre o catálogo, que é composto de 
visões.

[devaneio mode on]
Ahh! se eu pudesse criar uma tabela por herança dessa visão!
[devaneio mode off]

Mea culpa: nunca experimentei um relato de erro acerca.


 Uma dificuldade que eu vejo seria apenas o modelo relacional sendo 
 prejudicado quando usamos o catalogo do sistema, como por exemplo, 
 quando apagarmos um papel, alterarmos etc...

Não entendi o que o modelo relacional tem a ver… pelo contrário, no modelo 
relacional o catálogo é parte do modelo: diz‐se que ‘metadados também são 
dados’, para ficar com uma frase de efeito.
Não via metadados como parte do modelo.
___
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


[pgbr-geral] RES: Dúvida sobre Roles - Papéis

2012-01-02 Por tôpico Rubens José Rodrigues
Le 2011-12-30 14h44, Rubens José Rodrigues a écrit :

 Sim, força do hábito misturar sintaxe, estrangeirismo com o português. 
 Desculpe-me!

Não precisa pedir desculpas — basta procurar deixar claro o que se quer dizer. 
 Amiúde o estrangeirismo ajuda a esclarecer, mas geralmente atrapalha.

;-)

 Então, para o papel grupo_suporte eu configurei com o search_path 
 para  schema1,schema2,schema3,schame4,public; Neste caso, qualquer 
 outro papel que pertencesse a este, não deveria herdar o search_path!?

Não, porque caminho de busca não é permissão…
De fato, eu revi tudo e realmente estamos falando de coisas distintas.

 Sinceramente eu não vi no manualtalvez por não ter lido
 atenciosamente  que o search_path não é herdado e sim configurado
 isoladamente para cada papel.

Talvez confundiste permissão com variáveis?  Que eu me lembre, variáveis não 
se herdam…
Fato, eu revi meus conceitos.


 Se eu coloco o parâmetro INHERIT criacao do papel  rubens, ele
 automaticamente deveria herdar todas as permissões configuradas de
 todos os outros papeis pertencentes, exceto o search_path, certo!?

Hm, ao que parece realmente confundiste permissão com variável…


 c) A configuração do pg_hba.conf está certa? visto que no manual é
 explicito quanto ao sinal (+) quando refere-se a grupo/role!?

 Qual o problema?  Não existe mais diferença entre usuário, grupo
 e papel, na prática.
 Hu, coincidência ou não, sem o sinal  (+) não funciona...

O pg_hba.conf continua ‘enxergando’ grupos, embora por dentro não haja
diferença… mas minha questão é, ¿qual o problema?  Não entendi tua pergunta.
Não existe mais dúvidas.

Obrigado pelas dicas.
;-)

-- 
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] Dúvida sobre Roles - Papéis

2011-12-30 Por tôpico Rubens José Rodrigues
Olá pessoal, boa tarde!

Estou com a missão de mudar o sistema de permissões as databases aqui na
empresa e surgiu uma dúvida:

a) O search path não mostra todos os schemas setados para os grupos/roles
b) O usuário/role (Rubens e Rafaela) deveriam herdar [1] todos os set´s dos
grupos/roles, mas não herdou
c) A configuração do pg_hba.conf está certa? visto que no manual é explicito
quanto ao sinal (+) quando refere-se a grupo/role!?


Cenário : ambiente de testes em Windows -- produção em Solaris/Debian

PostgreSQL 9.1.2, compiled by Visual C++ build 1500, 32-bit

pg_hba.conf:
hostall +grupo_suporte  127.0.0.1/32md5
hostall +grupo_rh   127.0.0.1/32md5

Código para criação dos papeis / roles
http://pastebin.com/bPbGQpA3

/** DUVIDAS/ ERROS ENCONTRADOS ***/
psql -Urubens sap2unionr

show search_path;

 search_path

 $user,public
(1 registro)

Não mostra o search_path setado para o grupo e quando vamos executar um
select em tabelas de esquemas informados, somente se colocar precedido o
nome do schema.

Exemplo: 
select * from tabela1;
ERRO:  relação tabela1 não existe
LINHA 1: select * from tabela1;
 ^ 
select * from schema1.tabela1;  mostra o conteúdo buscado


[1] : These clauses determine whether a role inherits the privileges of
roles it is a member of. A role with the INHERIT attribute can automatically
use whatever database privileges have been granted to all roles it is
directly or indirectly a member of. Without INHERIT, membership in another
role only grants the ability to SET ROLE to that other role; the privileges
of the other role are only available after having done so. If not specified,
INHERIT is the default.



Obrigado antecipadamente,

Att
Rubens José Rodrigues





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


[pgbr-geral] RES: Dúvida sobre Roles - Papéis

2011-12-30 Por tôpico Rubens José Rodrigues

 Estou com a missão de mudar o sistema de permissões as databases

Pode ser nas bases de dados?  ;-)

Sim, força do hábito misturar sintaxe, estrangeirismo com o português. 
Desculpe-me!

 a) O search path não mostra todos os schemas setados para os 
 grupos/roles

O que seria um ‘esquema configurado’?  Em portenglish ou em tradução, não me 
ficou claro.
De qualquer maneira, se forem permissões, o caminho de busca independe das 
permissões, tem de ser configurado separadamente.

Então, para o papel grupo_suporte eu configurei com o search_path para  
schema1,schema2,schema3,schame4,public;
Neste caso, qualquer outro papel que pertencesse a este, não deveria herdar o 
search_path!?
Sinceramente eu não vi no manual talvez por não ter lido atenciosamente que o 
search_path não é herdado e sim configurado isoladamente para cada papel.

 b) O usuário/role (Rubens e Rafaela) deveriam herdar [1] todos os set´s dos
 grupos/roles, mas não herdou

Sets?  Conjuntos?  Ou, novamente, seriam permissões?  Deveriam herdar 
por quê, colocaste as palavras chave relevantes?  Mostrar o que consta 
no catálogo para esses usuários poderia esclarecer?

Se eu coloco o parâmetro INHERIT criacao do papel  rubens, ele 
automaticamente deveria herdar todas as permissões configuradas de todos os 
outros papeis pertencentes, exceto o search_path, certo!?
Pelo visto e na prática é o que ocorreu.

 c) A configuração do pg_hba.conf está certa? visto que no manual é explicito
 quanto ao sinal (+) quando refere-se a grupo/role!?

Qual o problema?  Não existe mais diferença entre usuário, grupo e 
papel, na prática.
Hu, coincidência ou não, sem o sinal  (+) não funciona...

 Cenário :ambiente de testes em Windows --  produção em Solaris/Debian

Deveria ser irrelevante para as questões que tentaste colocar, mas não é 
o ideal.


-- 
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] Open-Source database marketshare : november 2011

2011-11-30 Por tôpico Rubens José Rodrigues
Vejam isto:

http://www.linkedin.com/groupItem?view=srchtype=discussedNewsgid=51776ite
m=81455389type=membertrk=eml-anet_dig-b_pd-ttl-cnut=35LHwnnTPrnl01

Rubens José Rodrigues

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


[pgbr-geral] RES: conexão falhada

2011-10-20 Por tôpico Rubens José Rodrigues
 Caro rogerio,

 não consigo abrir a porta mesmo desligando a firewall e o antivirus
(avast). Já tentei adicionar a porta a excepção do firewall e não resulta.
pode ajudar-me?
 seguem em anexo os ficheiros se quiser confirmar que estão a liberar o
acesso
...
 Pedro Costa
 Geógrafo
 Especializado em Sistemas de Informação Geográfica e Ordenamento do
Território


No servidor Windows tente:

Netstat -an |more

Verifique se aparece algo do tipo:
TCP0.0.0.0:5432   0.0.0.0:0  LISTENING

Se sim o servidor está escutando no protocolo certo e na porta default.


Na estação cliente tente:

Netstat -an |more

Se aparecer algo do tipo logicamente substituindo pela seu endereçamento de
ip

  TCP10.4.1.17:5156110.4.1.6:5432  ESTABLISHED
  TCP10.4.1.17:5156210.4.1.6:5432  ESTABLISHED
  TCP10.4.1.17:5156310.4.1.6:5432  ESTABLISHED


Uma dúvida: Tem certeza de que os clientes e servidores estão no mesmo range
de ip indicado nas configurações do Postgres?

At.

Rubens J Rodrigues

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


[pgbr-geral] RES: RES: conexão falhada

2011-10-20 Por tôpico Rubens José Rodrigues
 Caro Rubens,

 No servidor está tudo certo no entanto no cliente não aparece a porta
correcta established. Nem essa nem nenhuma...

 Sabe como resolver?
 Sim tenho a certeza dos ip. o servidor é 192.168.1.147 e o cliente
192.168.1.13...
 Rogerio eu modificei como disse mas não resultou...

 Pedro Costa
 Geógrafo
 Especializado em Sistemas de Informação Geográfica e Ordenamento do
Território

Para efeito de testes já tentou liberar geral ?

No arquivo pg_hba.conf

# IPv4 local connections:
host   all   all 127.0.0.1/32md5
hostall all  10.4.1.6 255.255.0.0  md5 # verifique seu endereço
de rede ou range


No arquivo postgresql.conf:

listen_addresses = '*'  # what IP address(es) to
listen on;
# comma-separated list of addresses;
# defaults to 'localhost', '*' = all
# (change requires restart)
port = 5432 # (change requires restart)
max_connections = 100   #(change requires restart)

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


[pgbr-geral] Duvida com Modelagem: Array Multidimensional ou campos

2011-10-10 Por tôpico Rubens José Rodrigues
Pessoal,

Estamos enfrentado um dilema aqui na equipe, eu estou propondo o uso de
array multidimensional para criar a seguinte situação:

Requisito: Criar um repositório onde constará as localidades e os ciclos de
visitas sendo composto de até 4 semamas e cada ciclo poderá ter 7 dias.

Resumo da ópera: Ciclo - pode ser de 1 a 4 ou todos, sendo que cada um dele
poderá ter até 7 componentes, assim
Ex.:   
   Ciclo 1 - D S T Q Q S S
   ...
   Ciclo 3 - T Q
   ...

Cenário:
Ambiente de teste : PostgreSQL 8.4.1, compiled by Visual C++ build 1400,
32-bit

create table foo (
localidade varchar(60),
ciclo int [][]);

Dúvida: 

Alguns programadores OP, Python, C++  daqui  são contra trabalhar com
array e mais ainda com array multimensional, porque dizem dentre outras
coisas que não está em conformidade com SQL (92,99,2003), não é indexável,
difícil de se manipular etc. 
Do meu ponto de vista simplista, não vejo dificuldades em trabalhar com
arrays mas eles argumentam o contrário na hora de dedilhar linhas de
códigos. 
Eles propõem criar a entidade foo com 32 campos (localidade,
ciclo1,ciclo2..., d1,s1...) loucura!?, daí eu juntei a equipe e fomos para
discussão com a chefia para ver o que podemos fazer.
Argumentos em pauta, o que vocês acham?  
Será que eles estão com razão e devemos esquecer arrays?

Obrigado antecipadamente,


Rubens José Rodrigues

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


[pgbr-geral] RES: Duvida com Modelagem: Array Multidimensional ou campos

2011-10-10 Por tôpico Rubens José Rodrigues
Obrigado Flavio.

-Mensagem original-
De: pgbr-geral-boun...@listas.postgresql.org.br
[mailto:pgbr-geral-boun...@listas.postgresql.org.br] Em nome de Flavio
Henrique Araque Gurgel
Enviada em: segunda-feira, 10 de outubro de 2011 13:13
Para: t...@batistarepresentacoes.com; Comunidade PostgreSQL Brasileira
Assunto: Re: [pgbr-geral] Duvida com Modelagem: Array Multidimensional ou
campos

 Estamos enfrentado um dilema aqui na equipe, eu estou propondo o uso 
 de array multidimensional para criar a seguinte situação:

 Requisito: Criar um repositório onde constará as localidades e os 
 ciclos de visitas sendo composto de até 4 semamas e cada ciclo poderá ter
7 dias.

 Resumo da ópera: Ciclo - pode ser de 1 a 4 ou todos, sendo que cada um 
 dele poderá ter até 7 componentes, assim
 Ex.:
       Ciclo 1 - D S T Q Q S S
       ...
       Ciclo 3 - T Q
       ...

Problema comum por aí.

 Cenário:
 Ambiente de teste : PostgreSQL 8.4.1, compiled by Visual C++ build 
 1400, 32-bit

No seu cenário o desenho do banco independe da versão.
Mas... sugiro atualizar para a última versão da série, sempre, no seu caso
8.4.9. Tem centenas de bugs corrigidos.


 create table foo (
 localidade varchar(60),
 ciclo int [][]);

 Dúvida:

 Alguns programadores OP, Python, C++  daqui  são contra trabalhar 
 com array e mais ainda com array multimensional, porque dizem dentre 
 outras coisas que não está em conformidade com SQL (92,99,2003), não é 
 indexável, difícil de se manipular etc.

Realmente buscas em arrays podem ser não indexáveis, mas o resto dos
argumentos é pura preguiça de programador.

 Do meu ponto de vista simplista, não vejo dificuldades em trabalhar 
 com arrays mas eles argumentam o contrário na hora de dedilhar linhas 
 de códigos.
 Eles propõem criar a entidade foo com 32 campos (localidade, 
 ciclo1,ciclo2..., d1,s1...) loucura!?, daí eu juntei a equipe e 
 fomos para discussão com a chefia para ver o que podemos fazer.
 Argumentos em pauta, o que vocês acham?
 Será que eles estão com razão e devemos esquecer arrays?

Com duas ou três tabelas relacionadas você normaliza a loucura que você
citou acima, com extremos ganhos em performance, consumo de espaço em disco,
entre outras vantagens da normalização.

Assim, por exemplo:
Tabela 1: ciclos
Colunas: id_ciclo, nome_ciclo

Tabela 2: localidades
Colunas: id_localidade, nome_localidade

Tabela 3: visitas
Colunas: id_ciclo, id_localidade, dia_semana

Relacionamentos:
visitas.id_ciclo - ciclos.id_ciclo
visitas.id_localidade - localidades.id_localidade

Restrições (com índices implícitos e prontos para usar):
ciclos_pk: ciclos.id_ciclo
localidades_pk: localidades.id_localidade
visitas_pk: visitas.id_ciclo + visitas.id_localidade

Mostre isso aos seus programadores e veja se eles não vão gostar mais.
E você como DBA também deveria gostar mais.

[]s
Flavio Gurgel
___
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


[pgbr-geral] RES: Duvida com Modelagem: Array Multidimensional ou campos

2011-10-10 Por tôpico Rubens José Rodrigues

 2011/10/10 Dickson S. Guedes lis...@guedesoft.net:

  [3] http://mywiki.wooledge.org/XyProblem

 Eu realmente gosto desta lista! ;-)

 -Leo
 -- 
 Leonardo Cezar
 http://postgreslogia.wordpress.com

+1
[]s

___
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


[pgbr-geral] RES: PGBR2011 - Prêmio destaques da comunidade

2011-10-07 Por tôpico Rubens José Rodrigues
 1) Contribuição com código no PostgreSQL nos últimos 5 anos;
Euler

 2) Contribuição com código em ferramentas livres relacionadas ao PostgreSQL 
 nos últimos 2 anos;


 3) Pessoa que melhor contribuiu na lista pgbr-geral nos últimos 12 meses;
Tenho mais que um mas na ordem: Osvaldo Kussama, Leandro Dutra, Fabio Telles 
etc.

 4) Melhor contribuição na organização da comunidade brasileira nos últimos 2 
 anos;
Fábio Telles

 5) Melhor artigo técnico publicado nos últimos 2 anos
Fábio Telles http://wiki.postgresql.org/wiki/PostgreSQL,_discos_%26_Cia



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


[pgbr-geral] RES: Ajuda com select (crosstab)

2011-09-27 Por tôpico Rubens José Rodrigues
...
 Galera, consegui resolver lendo um exemplo aqui do news mesmo. Deixando a
primeira coluna como array  eu consigo acessar os seus dados depois.

Poderia postar como conseguiu para que o histórico contenha a solução!?

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


[pgbr-geral] RES: Drives ODBC

2011-04-28 Por tôpico Rubens José Rodrigues
DBILINK?

 

PostgreSQL -- MSSQL

 

De: pgbr-geral-boun...@listas.postgresql.org.br
[mailto:pgbr-geral-boun...@listas.postgresql.org.br] Em nome de
renat...@checkcheck.com.br
Enviada em: quinta-feira, 28 de abril de 2011 13:59
Para: pgbr-geral@listas.postgresql.org.br
Assunto: [pgbr-geral] Drives ODBC

 

Srs,

Alguém sabe dizer se existe outra for de conectar um Banco SQLServer2000 com
o Postgres 9 que não seja via drivers ODBC?

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


[pgbr-geral] RES: Segurança total em banco de dados

2011-03-30 Por tôpico Rubens José Rodrigues
tsc tsc tsc

 

Eu vi alguns ali que são cavernosos!

 

 

De: pgbr-geral-boun...@listas.postgresql.org.br
[mailto:pgbr-geral-boun...@listas.postgresql.org.br] Em nome de Fabrízio de
Royes Mello
Enviada em: quarta-feira, 30 de março de 2011 13:38
Para: Comunidade PostgreSQL Brasileira
Assunto: Re: [pgbr-geral] Segurança total em banco de dados

 

 

Em 30 de março de 2011 13:13, Fábio Telles Rodriguez
fabio.tel...@gmail.com escreveu:

Vejam essa aqui:

Coloque no Google:
ext:sql site:com.br

Ou seja: busque arquivos com a extensão '.sql' em sites com a extensão
'.com.br'.

Vejam e o resultado e me digam o que acharam.

 

Hehehehe... e depois são as ferramentas que não oferecem segurança
adequada...

-- 
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] RES: Segurança total em banco de dados

2011-03-30 Por tôpico Rubens José Rodrigues

2011/3/30 Fábio Telles Rodriguez fabio.tel...@gmail.com:

 Vejam e o resultado e me digam o que acharam.

 Devia dar cadeia…

Deviam dar um curso...

-- 
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


[pgbr-geral] RES: Segurança total em banco de dados

2011-03-30 Por tôpico Rubens José Rodrigues
... e ou cadeia para quem cometeu estas tolices?

 

 

 

De: pgbr-geral-boun...@listas.postgresql.org.br
[mailto:pgbr-geral-boun...@listas.postgresql.org.br] Em nome de Alexsander
Rosa
Enviada em: quarta-feira, 30 de março de 2011 14:14
Para: Comunidade PostgreSQL Brasileira
Assunto: Re: [pgbr-geral] Segurança total em banco de dados

 

Cadeia por expor quaisquer dados ou apenas por expor dados pessoais de
terceiros?

Em 30 de março de 2011 13:55, Leandro DUTRA leandro.gfc.du...@gmail.com
escreveu:

2011/3/30 Fábio Telles Rodriguez fabio.tel...@gmail.com:


 Vejam e o resultado e me digam o que acharam.

Devia dar cadeia…





-- 
Atenciosamente,
Alexsander da Rosa
http://rednaxel.com

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


[pgbr-geral] RES: Segurança total em banco de dados

2011-03-30 Por tôpico Rubens José Rodrigues
+1


-Mensagem original-
De: pgbr-geral-boun...@listas.postgresql.org.br
[mailto:pgbr-geral-boun...@listas.postgresql.org.br] Em nome de Fábio Telles
Rodriguez
Enviada em: quarta-feira, 30 de março de 2011 16:26
Para: Comunidade PostgreSQL Brasileira
Assunto: Re: [pgbr-geral] Segurança total em banco de dados

Em 30 de março de 2011 15:47, Mauro Risonho de Paula Assumpção
mauro.riso...@gmail.com escreveu:
 Este procedimento se chama Google Hacking...mas ha como evitar isso
 sim. Se quiserem algum material mando para lista. Confesso que nao sou
 DBA, mas trabalho na area de segurançainclusive poderemos fazer a
 fusao de conhecimentos. O que acham?

Pô, não precisa ser gênio para evitar isso, né? Colocar dados
sensíveis bem debaixo do servidor Web está longe de ser algo
inteligente. É algo realmente muito básico. Não deveria ser necessário
ter de lembrar alguém disso.

Ok, posso estar sendo um pouco arrogante, mas backups deveriam ser
tratados com mais seriedade.

[]s
-- 
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 mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


[pgbr-geral] RES: Segurança total em banco de dados

2011-03-30 Por tôpico Rubens José Rodrigues
Legal!

Em outras épocas seria motivo descabido para apedrejar, esquartejar, enforcar, 
eviscerar, execrar (mínimo), capar, detonar (lembra o Osama), enfim tudo com 
'%ar'

É cômico mas, pena que é trágico!

-Mensagem original-
De: pgbr-geral-boun...@listas.postgresql.org.br 
[mailto:pgbr-geral-boun...@listas.postgresql.org.br] Em nome de Alexsandro Haag
Enviada em: quarta-feira, 30 de março de 2011 16:35
Para: Comunidade PostgreSQL Brasileira
Assunto: Re: [pgbr-geral] Segurança total em banco de dados

Vamos amenizar o fato e chamar de Altruísmo Acidental.


Em 30-03-2011 16:25, Fábio Telles Rodriguez escreveu:
 Em 30 de mar�o de 2011 15:47, Mauro Risonho de Paula Assump��o
 mauro.riso...@gmail.com  escreveu:
 Este procedimento se chama Google Hacking...mas ha como evitar isso
 sim. Se quiserem algum material mando para lista. Confesso que nao sou
 DBA, mas trabalho na area de seguran�ainclusive poderemos fazer a
 fusao de conhecimentos. O que acham?
 P�, n�o precisa ser g�nio para evitar isso, n�? Colocar dados
 sens�veis bem debaixo do servidor Web est� longe de ser algo
 inteligente. � algo realmente muito b�sico. N�o deveria ser necess�rio
 ter de lembrar algu�m disso.

 Ok, posso estar sendo um pouco arrogante, mas backups deveriam ser
 tratados com mais seriedade.

 []s
___
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


[pgbr-geral] RES: Coluna DataType Timestamp : Comparativo equivocado ou abordagem equivocada?

2011-01-07 Por tôpico Rubens José Rodrigues
Vamos lá...

DDL da tabela

CREATE TABLE public.r905_acompviagem (
  seq SERIAL, 
  carro VARCHAR(20) NOT NULL, 
  codrota VARCHAR(20), 
  datasaida TIMESTAMP WITHOUT TIME ZONE NOT NULL, 
  pernoites INTEGER DEFAULT 0 NOT NULL, 
  dtprevret TIMESTAMP WITHOUT TIME ZONE, 
  retornado CHAR(1) DEFAULT 'N'::bpchar, 
  codusucad INTEGER NOT NULL, 
  datacad TIMESTAMP WITHOUT TIME ZONE DEFAULT now(), 
  seq904 INTEGER, 
  tipo CHAR(1), 
  codmotorista INTEGER, 
  codajudante1 INTEGER, 
  codajudante2 INTEGER, 
  dataretorno TIMESTAMP WITHOUT TIME ZONE, 
  codusuret INTEGER, 
  codtelefone INTEGER, 
  unifmot CHAR(1) DEFAULT 'N'::bpchar, 
  unifajud1 CHAR(1) DEFAULT 'N'::bpchar, 
  unifajud2 CHAR(1) DEFAULT 'N'::bpchar, 
  carrolimpo CHAR(1) DEFAULT 'S'::bpchar, 
  motretdef CHAR(1) DEFAULT 'S'::bpchar, 
  ajud1retdef CHAR(1) DEFAULT 'S'::bpchar, 
  ajud2retdef CHAR(2) DEFAULT 'S'::bpchar, 
  caixafechado CHAR(1) DEFAULT 'N'::bpchar, 
  codusufechacaixa INTEGER, 
  datafechacaixa TIMESTAMP WITHOUT TIME ZONE, 
  retroativo CHAR(1) DEFAULT 'N'::bpchar, 
  CONSTRAINT pk_905_acompviagem PRIMARY KEY(seq), 
  CONSTRAINT fk_905_acompviagem_usucad FOREIGN KEY (codusucad)
REFERENCES public.usuarios(seq)
ON DELETE NO ACTION
ON UPDATE CASCADE
NOT DEFERRABLE
) WITHOUT OIDS
TABLESPACE ts_dados;


Select :

select a.seq,
   a.datasaida,
   a.dataretorno
  from r905_acompviagem a
 where a.datasaida::date   = '01/12/2010'
   and a.dataretorno::date = '31/12/2010'
 order by a.datasaida


Saida de dados:
seq datasaida   dataretorno
243 05/04/2010 08:51:19 05/04/2010 08:51:18
247 05/04/2010 09:06:52 05/04/2010 09:06:52
253 05/04/2010 10:24:33 05/04/2010 10:24:33
254 05/04/2010 11:06:49 05/04/2010 11:06:48
255 05/04/2010 11:07:20 05/04/2010 11:07:20
257 05/04/2010 12:13:03 05/04/2010 12:13:03
258 06/04/2010 07:29:19 06/04/2010 07:29:18
259 06/04/2010 07:33:45 06/04/2010 07:33:44
260 06/04/2010 07:36:39 06/04/2010 07:36:38
261 06/04/2010 07:37:34 06/04/2010 07:37:33
262 06/04/2010 08:45:33 06/04/2010 08:45:32
263 06/04/2010 08:46:26 06/04/2010 08:46:26
264 06/04/2010 08:46:39 06/04/2010 08:46:39
265 06/04/2010 08:47:12 06/04/2010 08:47:11
266 06/04/2010 08:48:18 06/04/2010 08:48:17
267 06/04/2010 08:57:41 06/04/2010 08:57:40
268 06/04/2010 09:18:17 06/04/2010 09:18:16
269 06/04/2010 10:18:01 06/04/2010 10:18:00
270 07/04/2010 09:20:47 07/04/2010 09:20:47
275 07/04/2010 10:56:13 07/04/2010 10:56:12
271 07/04/2010 11:03:22 07/04/2010 11:03:22
272 07/04/2010 11:05:32 07/04/2010 11:05:32
273 07/04/2010 11:07:57 07/04/2010 11:07:56
274 07/04/2010 11:09:33 07/04/2010 11:09:33
276 07/04/2010 11:29:36 07/04/2010 11:29:35
277 07/04/2010 11:31:03 07/04/2010 11:31:03
278 07/04/2010 11:31:17 07/04/2010 11:31:17
279 07/04/2010 11:31:25 07/04/2010 11:31:24
280 07/04/2010 11:31:54 07/04/2010 11:31:54
281 07/04/2010 11:32:06 07/04/2010 11:32:05
282 07/04/2010 11:32:18 07/04/2010 11:32:18
283 08/04/2010 06:46:12 08/04/2010 06:46:12
284 08/04/2010 08:12:43 08/04/2010 08:12:43
285 08/04/2010 08:17:59 08/04/2010 08:17:59
286 08/04/2010 08:18:14 08/04/2010 08:18:13
287 08/04/2010 08:18:30 08/04/2010 08:18:30
288 08/04/2010 08:18:51 08/04/2010 08:18:51
289 08/04/2010 08:32:57 08/04/2010 08:32:57
290 08/04/2010 08:35:18 08/04/2010 08:35:18
295 08/04/2010 08:36:16 08/04/2010 08:36:16
291 08/04/2010 08:44:37 08/04/2010 08:44:36
292 08/04/2010 08:47:48 08/04/2010 08:47:48
293 08/04/2010 08:48:03 08/04/2010 08:48:03
294 08/04/2010 09:14:10 08/04/2010 09:14:09
296 08/04/2010 09:32:51 08/04/2010 09:32:50
297 09/04/2010 07:48:56 09/04/2010 07:48:56
298 09/04/2010 07:49:59 09/04/2010 07:49:58
299 09/04/2010 08:16:23 09/04/2010 08:16:23
303 09/04/2010 08:18:54 09/04/2010 08:18:54
300 09/04/2010 08:26:38 09/04/2010 08:26:38
301 09/04/2010 08:31:23 09/04/2010 08:31:22
302 09/04/2010 08:31:46 09/04/2010 08:31:46
304 09/04/2010 08:33:25 09/04/2010 08:33:24
305 09/04/2010 08:41:29 09/04/2010 08:41:29
306 09/04/2010 09:41:31 09/04/2010 09:41:30
307 09/04/2010 09:42:03 09/04/2010 09:42:03
308 09/04/2010 09:43:12 09/04/2010 09:43:11
309 09/04/2010 09:43:42 09/04/2010 09:43:41
310 09/04/2010 09:43:54 09/04/2010 09:43:53
311 09/04/2010 11:23:13 09/04/2010 11:23:13
312 12/04/2010 07:43:00 12/04/2010 07:42:59
313 12/04/2010 09:18:05 12/04/2010 09:18:05
314 12/04/2010 09:20:40 12/04/2010 09:20:40
315 12/04/2010 09:29:12 12/04/2010 09:29:12
316 12/04/2010 09:29:35 12/04/2010 09:29:34
317 12/04/2010 09:31:10 12/04/2010 09:31:09

[pgbr-geral] RES: RES: Coluna DataType Timestamp : Comparativo equivocado ou abordagem equivocada?

2011-01-07 Por tôpico Rubens José Rodrigues
Ops

Errei no contexto (estava com duas abas de query builder abertas).

Mas vamos ao resultado do teste.

= TRATATIVA DE TESTE
E AVALIAÇÃO
sap_2_unionr=# show datestyle;
LOG:  duration: 0.219 ms  statement: show datestyle;
 DateStyle
---
 ISO, DMY
(1 row)


sap_2_unionr =# SELECT ('05/04/2010 08:51:19'::date = '01/12/2010' and
'05/04/2010 08
:51:18'::date = '31/12/2010');
LOG:  duration: 0.546 ms  statement: SELECT ('05/04/2010 08:51:19'::date =
'01/
12/2010' and '05/04/2010 08:51:18'::date = '31/12/2010');
 ?column?
--
 f
(1 row)


= PROBLEMA :
ACHO QUE ACHEI O ERRO
sap_2_unionr =# select a.seq,
sap_2_unionr -#a.datasaida,
sap_2_unionr -#a.dataretorno
sap_2_unionr -#   from r905_acompviagem a
sap_2_unionr -#  where a.datasaida  a.dataretorno ;
LOG:  duration: 6.649 ms  statement: select a.seq,
   a.datasaida,
   a.dataretorno
  from r905_acompviagem a
 where a.datasaida  a.dataretorno ;
 seq  | datasaida  |dataretorno
--++
 4612 | 2011-01-04 09:16:48.986365 | 2011-01-04 00:00:00
 4576 | 2011-01-03 08:52:42.866134 | 1899-12-30 17:00:00
 1543 | 2010-07-05 14:57:03.027626 | 2010-07-05 14:52:39.818975
  805 | 2010-05-20 07:00:48.527273 | 2010-05-20 07:00:48
  827 | 2010-05-21 07:53:33.457388 | 2010-05-21 07:53:33
  819 | 2010-05-21 06:46:01.361399 | 2010-05-21 06:46:01
  824 | 2010-05-21 07:33:44.439904 | 2010-05-21 07:33:44
  828 | 2010-05-21 08:22:47.384948 | 2010-05-21 08:22:47
  823 | 2010-05-21 07:31:52.761665 | 2010-05-21 07:31:52
  825 | 2010-05-21 07:34:25.45789  | 2010-05-21 07:34:25
  820 | 2010-05-21 06:46:25.711412 | 2010-05-21 06:46:25
  829 | 2010-05-21 08:25:25.63626  | 2010-05-21 08:25:25
  826 | 2010-05-21 07:51:21.885277 | 2010-05-21 07:51:21
  832 | 2010-05-21 11:50:07.65441  | 2010-05-21 11:50:07
  822 | 2010-05-21 07:22:13.291241 | 2010-05-21 07:22:13
  830 | 2010-05-21 08:40:19.217596 | 2010-05-21 08:40:19
  803 | 2010-05-19 14:00:52.531| 2010-05-19 14:00:52
  796 | 2010-05-19 08:25:58.939849 | 2010-05-19 08:25:58
  804 | 2010-05-20 06:13:12.783199 | 2010-05-20 06:13:12
  808 | 2010-05-20 07:35:43.76612  | 2010-05-20 07:35:43
  817 | 2010-05-20 08:13:34.643324 | 2010-05-20 08:13:34
  815 | 2010-05-20 08:01:14.892897 | 2010-05-20 08:01:14
-- Mais  --


=== DETALHE

Matei só de ver o result set : o campo datasaida está com valor default
current_timestamp (ou seja, está incluindo os milésimos) e no campo retorno
está default now().

Será isto?

 


-Mensagem original-
De: pgbr-geral-boun...@listas.postgresql.org.br
[mailto:pgbr-geral-boun...@listas.postgresql.org.br] Em nome de Leonardo
Cezar
Enviada em: sexta-feira, 7 de janeiro de 2011 11:12
Para: Comunidade PostgreSQL Brasileira
Assunto: Re: [pgbr-geral] RES: Coluna DataType Timestamp : Comparativo
equivocado ou abordagem equivocada?

2011/1/7 Rubens José Rodrigues rubens.rodrig...@batistarepresentacoes.com:
 Vamos lá...
 select a.seq,
       a.datasaida,
       a.dataretorno
  from r905_acompviagem a
  where a.datasaida::date   = '01/12/2010'
   and a.dataretorno::date = '31/12/2010'
  order by a.datasaida


 Saida de dados:
 seq     datasaida       dataretorno
 243     05/04/2010 08:51:19     05/04/2010 08:51:18
 247     05/04/2010 09:06:52     05/04/2010 09:06:52

Parece q o contexto da dúvida inicial mudou, mas não deixa de ser
bizarro ao extremo. Vamos tentar entender ...

No psql ou em algum outro cliente do pg faça o seguinte:

postgres=# SHOW DateStyle;
 DateStyle
---
 ISO, DMY
(1 row)

SELECT ('05/04/2010 08:51:19'::date = '01/12/2010' and '05/04/2010
08:51:18'::date = '31/12/2010');
 ?column?
--
 f
(1 row)

Repare q as primeiras linhas exibidas pra vc retornam falso no meu
exemplo e portanto não deveriam ser exibidas, daí fica a dúvida quanto
a aplicação, por isso peço q execute num cliente (psql ou pgadmin) pra
validar o cenário.

Abraço!

-Leo
-- 
Leonardo Cezar
http://postgreslogia.wordpress.com
___
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


[pgbr-geral] Coluna DataType Timestamp : Comparativo equivocado ou abordagem equivocada?

2011-01-06 Por tôpico Rubens José Rodrigues
Boa tarde pessoal!

Hoje ao fazer uma verificação numa tabela, resolvi comparar duas colunas
(timestamp), e presenciei o seguinte

a)  Select * from tabela where coluna1  coluna2

Saida :

243 05/04/2010 08:51:19 05/04/2010 08:51:18
247 05/04/2010 09:06:52 05/04/2010 09:06:52
253 05/04/2010 10:24:33 05/04/2010 10:24:33
254 05/04/2010 11:06:49 05/04/2010 11:06:48
255 05/04/2010 11:07:20 05/04/2010 11:07:20
257 05/04/2010 12:13:03 05/04/2010 12:13:03
258 06/04/2010 07:29:19 06/04/2010 07:29:18
259 06/04/2010 07:33:45 06/04/2010 07:33:44
260 06/04/2010 07:36:39 06/04/2010 07:36:38
261 06/04/2010 07:37:34 06/04/2010 07:37:33
262 06/04/2010 08:45:33 06/04/2010 08:45:32
263 06/04/2010 08:46:26 06/04/2010 08:46:26
264 06/04/2010 08:46:39 06/04/2010 08:46:39

Será minha abordagem na comparação deste datatype equivocada ou tem algo
errado?

Cenário : 

PostgreSQL 8.3.12 on x86_64-pc-linux-gnu, compiled by GCC gcc-4.3.real
(Ubuntu 4.3.3-5ubuntu4) 4.3.3

Obrigado

Rubens José Rodrigues


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


[pgbr-geral] Conseguem me ouvir?

2010-11-30 Por tôpico Rubens José Rodrigues
Pessoal,

Não recebo mensagens do grupo há uns 4 dias, algum problema ou eu sou (estou
com) o problema?

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


[pgbr-geral] Erro em Function : Há um erro mas onde?

2010-10-15 Por tôpico Rubens José Rodrigues
Pessoal, boa tarde!

Sexta-feira, quase indo embora, já pensando naquela cerveja gelada.
Mas de repente, sempre acontece algo!

Estava aqui montando um relatório e entre um teste e outro, estava
funcionando, porém parou, e sinceramente não consigo encontrar o erro
(principalmente pq o sistema me aponta onde está).

Me ajudem?

Segue o link

http://pastebin.com/SYfSnpXe


Mensagem de Erro : 
  set-valued function called in context that cannot accept a set
  PL/pgSQL function fnc_desempenho_mot_ajud line 92 at RETURN NEXT


Obrigado,

At.
Rubens José Rodrigues

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


[pgbr-geral] RES: RES: Coluna do tipo Byte a em relação apresenta --select lento

2010-06-10 Por tôpico Rubens José Rodrigues
 

Opa,

Em 9 de junho de 2010 09:12, TI t...@batistarepresentacoes.com escreveu:

Olá Pessoal,

Preciso de uma dica de vocês. 

Temos uma tabela com uma coluna do tipo Bytea para armazenar uma imagem de
no máximo 100k (do tipo jpg), esta tabela é uma das menores em termos de
tamanho e registros (cerca de 400), porém, notamos que de uma semana para cá
está muito lento o “select *” desta tabela, daí fizemos uma série de testes,
como avaliar se realmente todas as imagens tem o tamanho acima descrito (ou
uma monstruosidade), se poderia ser problema em disco, memória etc. 

Descartamos vários problemas e partimos para “pedir” ajuda ao PostgreSQL
através dos logs, planos, analyze, vaccuum (na ordem) e não vimos nada (pelo
menos não enxergamos). Mas, se eu fizer um “select campo1, campo2...” e
omitir da seleção o campo bytea, tenho a performance desejada.

Abaixo segue o meu cenário para tentar mostrar a vocês nossa situação:

S.O - Linux batux 2.6.28-17-server #58-Ubuntu SMP Tue Dec 1 22:13:36 UTC
2009 x86_64 GNU/Linux

PostgreSQL 8.3.9 on x86_64-pc-linux-gnu, compiled by GCC gcc-4.3.real
(Ubuntu 4.3.3-5ubuntu4) 4.3.3

Tamanho das bases : 

datname Base_Size

template1   4328   kB

template0   4272   kB

postgres6356   kB

pykota 15008 MB

sap2broker  250797  GB

Tamanho das TS :

spcname Size

pg_default  144 MB

pg_global   354 kB

ts_dado   200360 GB

ts_indice   50427 GB

Tamanho da Tabela (em questão):

schemaname  tablename   registros   tamanho relkind

sap2broker  brkhrempl  339  112 kB  r

 

Plan com todos os campos:

QUERY PLAN

Seq Scan on funcionarios  (cost=0.00..17.39 rows=339 width=479) (actual
time=0.007..0.123 rows=339 loops=1)

Total runtime: 0.191 ms

Plan omitindo o campo bytea:

QUERY PLAN

Seq Scan on funcionarios  (cost=0.00..17.39 rows=339 width=447) (actual
time=0.009..0.496 rows=339 loops=1)

Total runtime: 0.561 ms

O tempo de mostragem do resultado do “select *” é de aproximadamente 11s.

O tempo de mostragem do resultado do  “select campo1,campo2...” omitindo o
campo bytea é de aproximadamente 0.10ms

O mesmo teste foi feito no psql, front end, script.

Alguém pode me dar uma dica?


Sua consulta sempre será sem nenhuma condição no WHERE?

 

Sim, esta consulta sempre será sem nenhuma condição de Where.



Você fez a consulta filtrando por campo da sua tabela? Qual o resultado? 

 

 

Se omitirmos o campo bytea temos a performance que desejamos, ou seja
resultado satisfatório.

Obrigado,

Rubens José Rodrigues

Analista de Suporte e Processos

Broker Nestlé do Brasil S/A

Departamento de Tecnologia e Informação

(55)27-99698081 - (55)27-33996419

--

Batista Coml. Log. e Representações Ltda.

 (55)27-33996400  

Rua José Ramos de Oliveira, 91 - Nossa Senhora da Penha

Vila Velha - ES - 29110-280


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



[]s
-- 
JotaComm
http://jotacomm.wordpress.com

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


[pgbr-geral] RES: Coluna do tipo Bytea em rela ção apresenta --select lento

2010-06-09 Por tôpico Rubens José Rodrigues
Olá Pessoal,

Preciso de uma dica de vocês. 

Temos uma tabela com uma coluna do tipo Bytea para armazenar uma imagem de
no máximo 100k (do tipo jpg), esta tabela é uma das menores em termos de
tamanho e registros (cerca de 400), porém, notamos que de uma semana para cá
está muito lento o “select *” desta tabela, daí fizemos uma série de testes,
como avaliar se realmente todas as imagens tem o tamanho acima descrito (ou
uma monstruosidade), se poderia ser problema em disco, memória etc. 

Descartamos vários problemas e partimos para “pedir” ajuda ao PostgreSQL
através dos logs, planos, analyze, vaccuum (na ordem) e não vimos nada (pelo
menos não enxergamos). Mas, se eu fizer um “select campo1, campo2...” e
omitir da seleção o campo bytea, tenho a performance desejada.

Abaixo segue o meu cenário para tentar mostrar a vocês nossa situação:

S.O - Linux batux 2.6.28-17-server #58-Ubuntu SMP Tue Dec 1 22:13:36 UTC
2009 x86_64 GNU/Linux

PostgreSQL 8.3.9 on x86_64-pc-linux-gnu, compiled by GCC gcc-4.3.real
(Ubuntu 4.3.3-5ubuntu4) 4.3.3

Tamanho das bases : 
datname Base_Size
template1   4328   kB
template0   4272   kB
postgres6356   kB
pykota 15008 MB
sap2broker  250797  GB

Tamanho das TS :
spcname Size
pg_default  144 MB
pg_global   354 kB
ts_dado   200360 GB
ts_indice   50427 GB

Tamanho da Tabela (em questão):
schemaname  tablename   registros   tamanho relkind
sap2broker  brkhrempl  339  112 kB  r


Plan com todos os campos:
QUERY PLAN
Seq Scan on funcionarios  (cost=0.00..17.39 rows=339 width=479) (actual
time=0.007..0.123 rows=339 loops=1)
Total runtime: 0.191 ms


Plan omitindo o campo bytea:
QUERY PLAN
Seq Scan on funcionarios  (cost=0.00..17.39 rows=339 width=447) (actual
time=0.009..0.496 rows=339 loops=1)
Total runtime: 0.561 ms

O tempo de mostragem do resultado do “select *” é de aproximadamente 11s.
O tempo de mostragem do resultado do  “select campo1,campo2...” omitindo o
campo bytea é de aproximadamente 0.10ms

O mesmo teste foi feito no psql, front end, script.

Alguém pode me dar uma dica?


Obrigado,


Rubens José Rodrigues
Analista de Suporte e Processos
Broker Nestlé do Brasil S/A
Departamento de Tecnologia e Informação
(55)27-99698081 - (55)27-33996419
--
Batista Coml. Log. e Representações Ltda.
 (55)27-33996400  
Rua José Ramos de Oliveira, 91 - Nossa Senhora da Penha
Vila Velha - ES - 29110-280


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


[pgbr-geral] RES: Criação de Banco v-8.4 .1-1

2009-10-20 Por tôpico Rubens José Rodrigues
Olá Henrique!

 

Para começarmos, nos ajude a te ajudar!

 

- Qual a mensagem de erro que aparece?

- Qual a linha de comando para criação do banco que estás usando?

- Tem como mostrar o passo-a-passo do que está fazendo?

 

O fato de estar usando o Vista não é impedimento nenhum.

 

Precisamos de mais subsídios para termos idéia do que acontece para te
ajudar.

 

 

 

 

De: pgbr-geral-boun...@listas.postgresql.org.br
[mailto:pgbr-geral-boun...@listas.postgresql.org.br] Em nome de Henrique
Silva
Enviada em: terça-feira, 20 de outubro de 2009 09:51
Para: pgbr-geral@listas.postgresql.org.br
Assunto: [pgbr-geral] Criação de Banco v-8.4.1-1

 

Bom dia, sou iniciante em postgre e li bastante antes de baixar e instalar,
optei pela versão mais recente.

 

Porém estou tendo problemas, ele não deixa eu criar um banco com codificação
LATIN1.

 

Encontrei na web outras pessoas com a mesma dificuldade, porém sem solução.

 

Meu SO é o Windows Vista.

 

 

Desde já, obrigado!

 

 

Henrique.

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


[pgbr-geral] Limitar acesso ao banco via SQL?

2009-10-16 Por tôpico Rubens José Rodrigues
Pessoal,

Tenho uma dúvida, existe uma forma de limitar o acesso (AKA disable login)
no PostgreSQL via SQL?
Sei que tenho condições de fazer isto via pg_hba.conf.

Grato,

Rubens J Rodrigues


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


[pgbr-geral] RES: Dica sobre implementação de time out : statement_timeout x aplicação x manutenção de banco

2009-09-18 Por tôpico Rubens José Rodrigues
Olá Mozart e Turma,

Obrigado pela dica.

Havíamos pensado em quebrar os bancos em porções baseado em seus padrões,
porém não vimos muita disponibilidade de dados para tal, chegou-se ao ponto
de tentar criar tabelas para depositarmos estatísticas de uso, tais como,
acesso por tabelas, deleções, updates, inserts, gráfico de uso por horário,
transações abortadas, iniciadas, load geral etc.

Todavia, ainda estamos estudando como chegar a este produto final (somos
originários do Oracle onde tudo vinha ou era produzido com certa facilidade
através das inúmeras views etc.).

Você e ou a turma pode me indicar o caminho das pedras em relação aos hits
do banco? Isto quer dizer alguma documentação, relato de experiência etc.

Desde já agradeço a todos,

Rubens




 b) Por necessidade desabilitamos o autovacuum por termos experimentado
 alguns dissabores (quem sabe por deficiência em sua compreensão).

Compreendo perfeitamente.
 
 c) Implementamos scripts de manutenção (vacuumdb, analyze, reindex)
semanais
 e individuais para cada base de dados respeitando suas propriedades e
 aplicações.

Ótimo.
 
 Determinados usuários deixam transações abertas, aplicativos abertos
etc...
 e com isto o vacuumdb para por ali “esperando” uma ação (ou
finalização)
 para que ele continue.

Se a transação se resolve sozinha (mesmo que demore), então não há nada
que você possa fazer senão deixá-la trabalhar.

 Para resolver temos as opções de terminate backend dos clientes ou do
script
 de manutenção para “voltar”.

Aborte sua manutenção. Veja o padrão de uso de cada tabela e agende as
manutenções para os horários em que elas não estiverem sendo usadas. Acho
pouco provável que seu usuário atualize de madrugada a mesma tabela que é
atualizada durante o dia. Se for o caso, só te resta escolher quem precisa
esperar em qual horário de qual dia da semana e pronto.
 
 a) Será que nossa abordagem está equivocada quanto ao vacuumdb em
relação a
 estas oportunidades (que possivelmente irão ocorrer outras vezes) de os
 clientes “esquecerem” a aplicação com transações em aberta?

Você pode estimar que uma transação aberta esteja aberta sem motivo, porém
não há como ter certeza. Pense naquele cara que esperou o fim do expediente
para rodar um script monstro de várias horas para atualizar sei lá o que
numa tabela gigante, crucial para seu chefe no dia seguinte. Imagine a cara
dele quando voltar no dia seguinte esperando usar os dados atualizados e
descobrir que algum desinformado do suporte matou a conexão do script
dele...

 b) Temos a possibilidade de implementar a opção statement_timeout, onde
 determinaríamos um período de inatividade tipo (5 min), mas vimos no
proprio
 manual que não é recomendavel, o que acham?

Nem pensar. Você não sabe qual a maior consulta que todos os seus usuários
podem fazer. Imagine um gerente tentando colocar na mesa do chefe aquele
relatório gerencial urgentíssimo que costumava levar 6 minutos e agora leva
5 para dizer que não dá...
 
 c)  Nosso ERP nos permite esta opção, mas a empresa mantenedora disse que
a
 melhor opção é via banco de dados e plano de manutenção, será o
caminho,
 usar o ERP para controlar o timeout dele mesmo?

A empresa mantenedora tem razão, isso é problema de administração de
banco, não do ERP.

 d) Quem já experimentou algo deste gênero e como chegou a um consenso
 funcional?

Consenso não imagino que haja nem que vá haver.

Lamento, sem um conhecimento profundo e detalhado do padrão de uso de todas
as suas tabelas, o jeito é abortar manutenções e particionar tabela a
tabela, espalhando pelos horários de menor uso.

Atenciosamente,

Mozart Hasse


___
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


[pgbr-geral] Dica sobre implementação de time out : statement_timeout x aplicação x manut enção de banco.

2009-09-16 Por tôpico Rubens José Rodrigues
Olá pessoal, boa tarde!

 

Estamos num dilema onde temos de apontar para uma solução, como segue:

 

Pontos

a) Temos 3 bases de dados, respectivamente (400GB, 800GB, 900MB)  sendo bi,
olap, middleware. 

b) Por necessidade desabilitamos o autovacuum por termos experimentado
alguns dissabores (quem sabe por deficiência em sua compreensão).

c) Implementamos scripts de manutenção (vacuumdb, analyze, reindex) semanais
e individuais para cada base de dados respeitando suas propriedades e
aplicações.

 

Dilema

Verificamos em algumas oportunidades que o helpdesk (nós) estamos sendo
contatados com muita freqüência pela madrugada devido ao “travamento”
(alegação de usuário) das aplicações (ou parte dela), ao “entrarmos no
circuito” de cara matamos a charada.

Determinados usuários deixam transações abertas, aplicativos abertos etc...
e com isto o vacuumdb para por ali “esperando” uma ação (ou finalização)
para que ele continue.

Para resolver temos as opções de terminate backend dos clientes ou do script
de manutenção para “voltar”.

 

Duvida

a) Será que nossa abordagem está equivocada quanto ao vacuumdb em relação a
estas oportunidades (que possivelmente irão ocorrer outras vezes) de os
clientes “esquecerem” a aplicação com transações em aberta?

b) Temos a possibilidade de implementar a opção statement_timeout, onde
determinaríamos um período de inatividade tipo (5 min), mas vimos no proprio
manual que não é recomendavel, o que acham?

c)  Nosso ERP nos permite esta opção, mas a empresa mantenedora disse que a
melhor opção é via banco de dados e plano de manutenção, será o caminho,
usar o ERP para controlar o timeout dele mesmo?

d) Quem já experimentou algo deste gênero e como chegou a um consenso
funcional?

 

Cenario

PostgreSQL 8.3.7 on x86_64-pc-linux-gnu, compiled by GCC gcc-4.3.real
(Ubuntu 4.3.2-1ubuntu11) 4.3.2

Raid 1+0 (4 TB) SAS Hot

6 GB Ram

 

Conto com a opnião de vocês,

 

Att.



Rubens José Rodrigues

 

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


[pgbr-geral] Autovacuum desabilitado mas ainda assim aparecendo na lista de processos.

2009-09-04 Por tôpico Rubens José Rodrigues
Olá Pessoal,

 

Estou com uma dúvida, por opção nossa resolvemos não deixar o autovacuum no
automático e sim no manual (cron nas madrugadas), porém percebemos que ainda
assim vemos com frequencia vários processos com o autovacuum, será que
fizemos algo em desacordo?

Estamos enfrentando uma dificuldade (antes não tinha) de quando estes
processos estarem “rodando” as tabelas envolvidas estarem “locadas” e assim
fica, até que um de nós “mata” o pid da operação (autovacuum).

 

NOSSO CENÁRIO

PostgreSQL 8.3.7 on x86_64-pc-linux-gnu, compiled by GCC gcc-4.3.real
(Ubuntu 4.3.2-1ubuntu11) 4.3.2

 

PS AUX|GREP POSTGRES

postgres  5262  0.0  0.0  72168  1368 ?Ss   Aug16   1:08 postgres:
logger process

root 25377  0.0  0.0  70124  3136 ?Ss   07:09   0:00 sshd:
postgres [priv]

postgres 25379  0.0  0.0  70124  1896 ?S07:09   0:00 sshd:
postg...@pts/0

postgres 25380  0.0  0.0  19480  2272 pts/0Ss   07:09   0:00 -bash

root 25385  0.0  0.0  70124  3140 ?Ss   07:09   0:00 sshd:
postgres [priv]

postgres 25387  0.0  0.0  70124  1900 ?S07:09   0:00 sshd:
postg...@pts/1

postgres 25388  0.0  0.0  19480  2288 pts/1Ss   07:09   0:00 -bash

postgres 25407  0.0  0.0  21016  1804 pts/0S+   07:10   0:00 vim
teste.py

postgres 25587  0.0  0.1 703176  7752 ?Ss   07:25   0:00 postgres:
writer process

postgres 25588  0.0  0.0 703176  1568 ?Ss   07:25   0:00 postgres:
wal writer process

postgres 25589  0.0  0.0 703176  1712 ?Ss   07:25   0:00 postgres:
autovacuum launcher process

postgres 25590  0.0  0.0  72296  1300 ?Ss   07:25   0:00 postgres:
archiver process

postgres 25591  0.0  0.0  72296  1432 ?Ss   07:25   0:00 postgres:
stats collector process

postgres 25595  0.1  0.3 710820 15052 ?Ss   07:27   0:02 postgres:
postgres apoiorh 10.4.1.42(3856) idle in transaction

postgres 25684  0.0  0.0  16152  1144 pts/1R+   07:54   0:00 ps aux

postgres 25685  0.0  0.0   7500   816 pts/1R+   07:54   0:00 grep
postgres

 

POSTGRESQL.CONF

#---
---

383 # AUTOVACUUM PARAMETERS

384
#---
---

385

386 #autovacuum = off # Enable autovacuum subprocess?  'on'

387   # requires track_counts to also be on.

388 #log_autovacuum_min_duration = -1 # -1 disables, 0 logs all actions
and

389   # their durations,  0 logs only

390   # actions running at least that time.

391 #autovacuum_max_workers = 3   # max number of autovacuum
subprocesses

392 #autovacuum_naptime = 1min# time between autovacuum runs

393 #autovacuum_vacuum_threshold = 500  # min number of row updates
before

394   # vacuum

395 #autovacuum_analyze_threshold = 500 # min number of row updates
before

396   # analyze

397 #autovacuum_vacuum_scale_factor = 0.2 # fraction of table size
before vacuum

398 #autovacuum_analyze_scale_factor = 0.1  # fraction of table size
before analyze

399 #autovacuum_freeze_max_age = 2  # maximum XID age before
forced vacuum

400   # (change requires restart)

401 #autovacuum_vacuum_cost_delay = 20  # default vacuum cost delay for

402   # autovacuum, -1 means use

403   # vacuum_cost_delay

404 #autovacuum_vacuum_cost_limit = -1  # default vacuum cost limit for

405   # autovacuum, -1 means use

406   # vacuum_cost_limit

407

408

409
#---
---

 

 

Att.



Rubens José Rodrigues

 Falta de tempo é desculpa daqueles que perdem tempo por falta de métodos

 

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


[pgbr-geral] Acessar base MS SQL SERVER usando dbl ink, é possivel?

2009-08-27 Por tôpico Rubens José Rodrigues
Olá pessoal,

 

Hoje eu tenho um “gadget” em java agendado (cron) que faz pesquisa num
sistema em MSSQL-SERVER e atualiza algumas tabelas no PostgreSQL, que
funciona redondinho.

 

Porém, vi na documentação [1] sobre o dblink e veio a dúvida se é possivel
via contrib, pl acessar esta base?

 

Meu cenário:

PostgreSQL 8.3.7 on x86_64-pc-linux-gnu, compiled by GCC gcc-4.3.real
(Ubuntu 4.3.2-1ubuntu11) 4.3.2

 

 

[1] -
http://www.postgresql.org/docs/current/interactive/contrib-dblink.html
http://www.postgresql.org/docs/current/interactive/contrib-dblink.html

 

Desde já agradeço,

 

 

 

Att.



Rubens José Rodrigues

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


[pgbr-geral] RES: SET DEADLOCK_PRIORITY

2009-08-21 Por tôpico Rubens José Rodrigues
Leandro,

Boa tarde!
A assinatura do seu email não condiz com esta lista.

;-)



 Falta de tempo é desculpa daqueles que perdem tempo por falta de métodos

Att.

Rubens José Rodrigues
T.I, Analista de Suporte
Tel: (27)3399-6419 / (27)9969-8081
rubens.rodrig...@batistarepresentacoes.com

Broker Nestlé do Brasil S/A
Batista Coml. Log. Representações Ltda.
Rua José Ramos de Oliveira, 91, 29111-280
Nossa Senhora da Penha, Vila Velha, ES
(27)3399-6400 / (27)9975-0140

-Mensagem original-
De: pgbr-geral-boun...@listas.postgresql.org.br
[mailto:pgbr-geral-boun...@listas.postgresql.org.br] Em nome de Leandro
Henrique Pereira Neto
Enviada em: sexta-feira, 21 de agosto de 2009 13:52
Para: Comunidade PostgreSQL Brasileira
Assunto: Re: [pgbr-geral] SET DEADLOCK_PRIORITY


Mozart Hasse escreveu:
 Olá,

 Por acaso o Postgres tem o equivalente a este comando do SQL Server? Ele
se
 aplica à conexão e indica qual a prioridade do processo corrente caso ele
se
 envolva num deadlock. Eu preciso *muito* ter o controle sobre isso para
poder
 rodar alguns processos de baixa prioridade sem *nunca* comprometer
 transações de processos críticos.
 Respostas antecipadas:
 * Não, tentar rodar de novo a transação no processo crítico é desastroso,
 tanto em desempenho quanto em esforço de programação.
 * Não, eu não posso evitar completamente o deadlock entre esses dois
 processos (baixa x alta prioridade). Já sacrifiquei tudo o que poderia de
 paralelismo fazendo os processos de alta prioridade não causarem deadlocks
 entre si.
 * Não, eu não vou esquartejar minhas transações em pedaços menores tão
 cedo, se é que algum dia eu vou fazer isso só por um capricho do Postgres.

 Atenciosamente,

 Mozart Hasse

   
Mozart,

Sei que não é a resposta esperada, mas a verdade a vezes doí, deadlock é 
problema de lógica da aplicação. Você pode ter milhares de transações em 
paralelo e não ter deadlock, assim como ter somente dois processos e 
gerar deadlock. Para resolver problemas deadlock não é necessário 
sacrificar paralelismo e sim rever a lógica de aquisição de locks da 
aplicação.
Uma dica simples é adquirir os locks nos objetos sempre na mesma ordem.

Para defender o postgresql posso ter informar que por exemplo o bancos 
de dados bam-bam do mercado (Oracle) não tem comando similar a este e 
isto não é um problema.

Leandro.

Esta mensagem do SERVIÇO FEDERAL DE PROCESSAMENTO DE DADOS (SERPRO),
empresa pública federal regida pelo disposto na Lei Federal nº 5.615, é
enviada exclusivamente a seu destinatário e pode conter informações
confidenciais, protegidas por sigilo profissional. Sua utilização
desautorizada é ilegal e sujeita o infrator às penas da lei. Se você a
recebeu indevidamente, queira, por gentileza, reenviá-la ao emitente,
esclarecendo o equívoco.

This message from SERVIÇO FEDERAL DE PROCESSAMENTO DE DADOS (SERPRO) -- a
government company established under Brazilian law (5.615/70) -- is directed
exclusively to its addressee and may contain confidential data, protected
under professional secrecy rules. Its unauthorized use is illegal and may
subject the transgressor to the law's penalties. If you're not the
addressee, please send it back, elucidating the failure.
___
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


[pgbr-geral] Ajuda, dica, luz : Script de backup parou de funcionar via cron mas funciona via shell.

2009-08-07 Por tôpico Rubens José Rodrigues
Olá Pessoal,

Estou com uma dificuldade aqui quanto ao dump de um banco via cron usando um
script, ele funcionava normalmente até ontem, mas hoje não sei por que carga
d’água parou.

 

Cenário:

PostgreSQL 8.3.7 on x86_64-pc-linux-gnu, compiled by GCC gcc-4.3.real
(Ubuntu 4.3.2-1ubuntu11) 4.3.2

 

Missão:

Dump de um banco de dados via cron

 

Script:

#!/bin/bash

# Script para dump de banco de dados

# By Rubens J Rodrigues

# 09/02/2009 08:06h

 

# Variaveis

PASTABIN='/usr/lib/postgresql/8.3/bin'

DST='/sistemas/unionr/backup/dmp/'

tt=`/bin/date +%d_%m_%Y`

ARQUIVO=$DSTOracle-SAP-PG-$tt.backup

 

# Exportando as variaveis

export 'PG_PORT=5432'

export 'PG_HOST=localhost'

export 'PG_DATABASE=_oracle_sap_bi'

export 'PG_USERNAME=x’ #onde x nome do usuario

export 'PG_PASSWORD=x’ #onde x senha do usuario

 

#Iniciando o backup do banco

$PASTABIN/pg_dump -U postgres -F c -b -E UTF8 -f $ARQUIVO -Z 9 oracle_sap_bi

 

# Comprimindo arquivo e apagando o original

cd /sistemas/unionr/backup/dmp

tar -zcf $ARQUIVO.tar.gz $ARQUIVO

rm -f $ARQUIVO

 

Syslog (Ultimas linhas)

Aug  7 16:08:36 batux crontab[18414]: (postgres) BEGIN EDIT (postgres)

Aug  7 16:08:48 batux crontab[18414]: (postgres) REPLACE (postgres)

Aug  7 16:08:48 batux crontab[18414]: (postgres) END EDIT (postgres)

Aug  7 16:09:01 batux /usr/sbin/cron[5505]: (postgres) RELOAD
(crontabs/postgres)

Aug  7 16:09:01 batux /USR/SBIN/CRON[18421]: (root) CMD (  [ -x
/usr/lib/php5/maxlifetime ]  [ -d /var/lib/php5 ]  find /var/lib/php5/
-type f -cmin +$(/usr/lib/php5/maxlifetime) -print0 | xargs -n 200 -r -0 rm)

Aug  7 16:10:01 batux /USR/SBIN/CRON[18432]: (root) CMD ([ -x
/usr/sbin/update-motd ]  /usr/sbin/update-motd 2/dev/null)

Aug  7 16:11:01 batux /USR/SBIN/CRON[18448]: (postgres) CMD
(/sistemas/unionr/scripts/backup.sh)

 

Problema resultante:

Arquivo com Tamanho zerado.

 

Alguma idéia?

 

Grato a todos

 

Att.



Rubens José Rodrigues

 

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


[pgbr-geral] RES: Ajude a escolher as palestras do PGCon Brasil 2009

2009-07-20 Por tôpico Rubens José Rodrigues
C...
Mas votarei

 Falta de tempo é desculpa daqueles que perdem tempo por falta de métodos

Att.

Rubens José Rodrigues
T.I, Analista de Suporte
Tel: (27)3399-6419 / (27)9969-8081
rubens.rodrig...@batistarepresentacoes.com

Broker Nestlé do Brasil S/A
Rua José Ramos de Oliveira, 91, 29111-280
Nossa Senhora da Penha, Vila Velha, ES
(27)3399-6400 / (27)9975-0140


-Mensagem original-
De: pgbr-geral-boun...@listas.postgresql.org.br
[mailto:pgbr-geral-boun...@listas.postgresql.org.br] Em nome de Fábio Telles
Rodriguez
Enviada em: segunda-feira, 20 de julho de 2009 12:14
Para: Comunidade PostgreSQL Brasileira
Assunto: Re: [pgbr-geral] Ajude a escolher as palestras do PGCon Brasil 2009

Senhores a votação termina amanhã... até agora temos menos de 50
votos. Achei estranho, então pergunto,

Se você não votou ainda é porquê:

A) Nem li meus e-mails da semana passada ainda... daqui a pouco eu voto!
B) É muita coisa para ler, estou sem tempo;
C) Confio na banca avaliadora, não precisam do meu voto;
D) Não vou e não tenho interesse no PGCon Brasil 2009;
E) Outros, qual?


Só queria saber a opinião de vocês sobre o processo. A votação foi uma
novidade em relação às edições anteriores e eu gostaria de saber se é
uma novidade positiva ou não para a comunidade.

Atenciosamente,
Fábio Telles

2009/7/16 Fábio Telles Rodriguez fabio.tel...@gmail.com:
 Senhores, está aberta a votação para as propostas de palestras
 enviadas para o PGCon Brasil 2009.

 http://pgcon.postgresql.org.br/2009/votacao.php

 A votação está sendo divulgada apenas nas listas pgbr-geral e
 pgbr-dev, para priviegiar o voto das pessoas da comunidade.

 A votação terminaria logo, no dia 21/07/2009, na próxima 3ª feira,
 segundo o calendário da chamada de trabalhos em:

 http://pgcon.postgresql.org.br/2009/chamadas.php

 Bom, já dá para ter uma amostra do PGCon Brasil 2009, boa diversão!!!

 OBSERVAÇÃO IMPORTANTE: Segundo foi definido, a votação não será o
 ÚNICO fator determinante na escolha das palestras. A comissão
 avaliadora é soberana na escolha. Também não consta na votação as
 propostas de Hacker Talks.

 Atenciosamente,
 Fábio Telles
 --
 blog: http://www.midstorm.org/~telles/
 e-mail / jabber: fabio.tel...@gmail.com




-- 
blog: http://www.midstorm.org/~telles/
e-mail / jabber: fabio.tel...@gmail.com
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

E-mail verificado pelo Terra Anti-Spam.
Para classificar esta mensagem como spam ou não spam, visite
http://ecp.terra.com.br/cgi-bin/reportspam.cgi?+_d=SCY0MDUxNTIxMiNwZXJtIWJhd
GlzdGFyZXByZXNlbnRhY29lc2xtJjEsMTI0ODEwMjg0Mi41Mzc3NjAuMTc2NzUuZW1icm8udHBuL
nRlcnJhLmNvbSw0ODAzTerraMail
Verifique periodicamente a pasta Spam para garantir que apenas mensagens
indesejadas sejam classificadas como Spam.

Esta mensagem foi verificada pelo E-mail Protegido.
Atualizado em 19/07/2009


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


[pgbr-geral] RES: RES: Ajude a escolher as palestras do PGCon Brasil 2009

2009-07-20 Por tôpico Rubens José Rodrigues
www.webmeeting.com.br (não tenho idéia de valores)

Mas existe uma solução free com ddns + adsl + stream.

Última semana tivemos uma e-palestra ao vivo para aproximadamente 1500
pessoas em 39 pontos diferentes com métodos de conexões diferentes e foi uma
beleza.


 Falta de tempo é desculpa daqueles que perdem tempo por falta de métodos

Att.

Rubens José Rodrigues
T.I, Analista de Suporte
Tel: (27)3399-6419 / (27)9969-8081
rubens.rodrig...@batistarepresentacoes.com

Broker Nestle do Brasil S/A
Rua José Ramos de Oliveira, 91, 29111-280
Nossa Senhora da Penha, Vila Velha, ES
(27)3399-6400 / (27)9975-0140


-Mensagem original-
De: pgbr-geral-boun...@listas.postgresql.org.br
[mailto:pgbr-geral-boun...@listas.postgresql.org.br] Em nome de Fábio Telles
Rodriguez
Enviada em: segunda-feira, 20 de julho de 2009 14:42
Para: Comunidade PostgreSQL Brasileira
Assunto: Re: [pgbr-geral] RES: Ajude a escolher as palestras do PGCon Brasil
2009

2009/7/20 Stefan Horochovec stefan.horocho...@gmail.com:
 Ola

 Sera possivel acompanhar as palestras atraves da internet?

Olha, eu particularmente não estava pensando nisso. Alguém aqui sabe
quanto custaria para oferecer este tipo de serviço?

[]s
Fábio Telles

 Abracos
 Stefan Horochovec
 Analista de Sistemas
 Adobe User Group Manager - FlexDuck
 Blog: http://www.horochovec.com.br/
 Use Java, Flex e Linux


 2009/7/20 Jorge Vilela jorge.com...@gmail.com

 A) Mas já votei! =)

 2009/7/20 Rubens José Rodrigues
 rubens.rodrig...@batistarepresentacoes.com

 C...
 Mas votarei

  Falta de tempo é desculpa daqueles que perdem tempo por falta de
 métodos

 Att.



 Rubens José Rodrigues
 T.I, Analista de Suporte
 Tel: (27)3399-6419 / (27)9969-8081
 rubens.rodrig...@batistarepresentacoes.com



 Broker Nestlé do Brasil S/A
 Rua José Ramos de Oliveira, 91, 29111-280
 Nossa Senhora da Penha, Vila Velha, ES
 (27)3399-6400 / (27)9975-0140


 -Mensagem original-
 De: pgbr-geral-boun...@listas.postgresql.org.br
 [mailto:pgbr-geral-boun...@listas.postgresql.org.br] Em nome de Fábio
 Telles
 Rodriguez
 Enviada em: segunda-feira, 20 de julho de 2009 12:14
 Para: Comunidade PostgreSQL Brasileira
 Assunto: Re: [pgbr-geral] Ajude a escolher as palestras do PGCon Brasil
 2009

 Senhores a votação termina amanhã... até agora temos menos de 50
 votos. Achei estranho, então pergunto,

 Se você não votou ainda é porquê:

 A) Nem li meus e-mails da semana passada ainda... daqui a pouco eu voto!
 B) É muita coisa para ler, estou sem tempo;
 C) Confio na banca avaliadora, não precisam do meu voto;
 D) Não vou e não tenho interesse no PGCon Brasil 2009;
 E) Outros, qual?


 Só queria saber a opinião de vocês sobre o processo. A votação foi uma
 novidade em relação às edições anteriores e eu gostaria de saber se é
 uma novidade positiva ou não para a comunidade.

 Atenciosamente,
 Fábio Telles

 2009/7/16 Fábio Telles Rodriguez fabio.tel...@gmail.com:
  Senhores, está aberta a votação para as propostas de palestras
  enviadas para o PGCon Brasil 2009.
 
  http://pgcon.postgresql.org.br/2009/votacao.php
 
  A votação está sendo divulgada apenas nas listas pgbr-geral e
  pgbr-dev, para priviegiar o voto das pessoas da comunidade.
 
  A votação terminaria logo, no dia 21/07/2009, na próxima 3ª feira,
  segundo o calendário da chamada de trabalhos em:
 
  http://pgcon.postgresql.org.br/2009/chamadas.php
 
  Bom, já dá para ter uma amostra do PGCon Brasil 2009, boa diversão!!!
 
  OBSERVAÇÃO IMPORTANTE: Segundo foi definido, a votação não será o
  ÚNICO fator determinante na escolha das palestras. A comissão
  avaliadora é soberana na escolha. Também não consta na votação as
  propostas de Hacker Talks.
 
  Atenciosamente,
  Fábio Telles
  --
  blog: http://www.midstorm.org/~telles/
  e-mail / jabber: fabio.tel...@gmail.com
 



 --
 blog: http://www.midstorm.org/~telles/
 e-mail / jabber: fabio.tel...@gmail.com
 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

 E-mail verificado pelo Terra Anti-Spam.
 Para classificar esta mensagem como spam ou não spam, visite


http://ecp.terra.com.br/cgi-bin/reportspam.cgi?+_d=SCY0MDUxNTIxMiNwZXJtIWJhd


GlzdGFyZXByZXNlbnRhY29lc2xtJjEsMTI0ODEwMjg0Mi41Mzc3NjAuMTc2NzUuZW1icm8udHBuL
 nRlcnJhLmNvbSw0ODAzTerraMail
 Verifique periodicamente a pasta Spam para garantir que apenas mensagens
 indesejadas sejam classificadas como Spam.

 Esta mensagem foi verificada pelo E-mail Protegido.
 Atualizado em 19/07/2009


 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https

[pgbr-geral] RES: RES: Ajude a escolher as palestras do PGCon Brasil 2009

2009-07-20 Por tôpico Rubens José Rodrigues
Posso contribuir com a comunidade, criando um grupo de trabalho para estudo
e viabilidade de um sistema que irá captar as imagens, compactar e
transmitir.
Existem algumas ferramentas open, mas um exemplo que pode ser visto é o da
empresa www.webmeeting.com.br, que poderá nos nortear.

 Falta de tempo é desculpa daqueles que perdem tempo por falta de métodos

Att.

Rubens José Rodrigues
T.I, Analista de Suporte
Tel: (27)3399-6419 / (27)9969-8081
rubens.rodrig...@batistarepresentacoes.com

Broker Nestlé do Brasil S/A
Rua José Ramos de Oliveira, 91, 29111-280
Nossa Senhora da Penha, Vila Velha, ES
(27)3399-6400 / (27)9975-0140


-Mensagem original-
De: pgbr-geral-boun...@listas.postgresql.org.br
[mailto:pgbr-geral-boun...@listas.postgresql.org.br] Em nome de Dickson S.
Guedes
Enviada em: segunda-feira, 20 de julho de 2009 16:36
Para: Comunidade PostgreSQL Brasileira
Assunto: Re: [pgbr-geral] RES: Ajude a escolher as palestras do PGCon Brasil
2009

Em Mon, 20 Jul 2009 14:42:01 -0300, Fábio Telles Rodriguez  
fabio.tel...@gmail.com escreveu:
 2009/7/20 Stefan Horochovec stefan.horocho...@gmail.com:
 Ola

 Sera possivel acompanhar as palestras atraves da internet?

 Olha, eu particularmente não estava pensando nisso. Alguém aqui sabe
 quanto custaria para oferecer este tipo de serviço?

Em conversas informais comentamos sobre isto.

Em resumo? Poucas pessoas na organização para fazer muita coisa. Isto
acaba gerando gargalos e afunilamentos. Se tivessemos mais pessoas
ajudando na organização provavelmente teríamos recursos mais avançados
como a transmissão via web e/ou gravação de algumas/todas as palestras,
tradução simultânea, etc.

A dica é forte e acredito que digna de atenção, nem que seja para o ano
que vem.

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

E-mail verificado pelo Terra Anti-Spam.
Para classificar esta mensagem como spam ou não spam, visite
http://ecp.terra.com.br/cgi-bin/reportspam.cgi?+_d=SCY0MDUxNTIxMiNwZXJtIWJhd
GlzdGFyZXByZXNlbnRhY29lc2xtJjEsMTI0ODExODYwNC4xNDc5MTguMTA0NjcucHJlc3Rvbi50Z
XJyYS5jb20sNDQwMQ==TerraMail
Verifique periodicamente a pasta Spam para garantir que apenas mensagens
indesejadas sejam classificadas como Spam.

Esta mensagem foi verificada pelo E-mail Protegido.
Atualizado em 20/07/2009


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


[pgbr-geral] RES: Dúvidas em funções com strings;

2009-07-07 Por tôpico Rubens José Rodrigues
Perfeito, obrigado a todos.

 

 

 Falta de tempo é desculpa daqueles que perdem tempo por falta de métodos

 

Att.



Rubens José Rodrigues

T.I, Analista de Suporte

Tel: (27)3399-6419 / (27)9969-8081

rubens.rodrig...@batistarepresentacoes.com



Broker Nestlé do Brasil S/A

Rua José Ramos de Oliveira, 91, 29111-280

Nossa Senhora da Penha, Vila Velha, ES

(27)3399-6400 / (27)9975-0140

 

De: Fabrízio de Royes Mello [mailto:fabriziome...@gmail.com] 
Enviada em: segunda-feira, 6 de julho de 2009 17:41
Para: rubens.rodrig...@batistarepresentacoes.com; Comunidade PostgreSQL
Brasileira
Assunto: Re: [pgbr-geral] Dúvidas em funções com strings;

 

 

2009/7/6 Rubens José Rodrigues rubens.rodrig...@batistarepresentacoes.com

corte 

a) Contar a presença de uma determinada string dentro de outra string. Ex.:
strcount(‘a’,’amanhã’)(*), aqui esta função contaria a incidência da
substring ‘a’ na string ‘amanh㒠me retornado o valor 2.


Caro Rubens,

Função nativa do PostgreSQL para solucionar esse teu problema creio que não
tenha (pelo menos não encontrei na documentação [1])

Mas rapidinho podemos solucionar esse impasse:

create or replace function strcount(text, text) returns bigint as 
$$
  select sum(conta) 
from (select case 
   when substr($2, i, 1) = $1 then 
 1 
   else 
 0 
 end as conta 
from generate_series(1, length($2)) as i) as x;
$$
language sql;


E um teste rápido:


bdteste=# select strcount('i', 'Fabrizio');
 strcount 
--
2
(1 row)

bdteste=# select strcount('a', 'amanhã');
 strcount 
--
2
(1 row)


Espero ter ajudado.


[1] http://www.postgresql.org/docs/8.4/interactive/functions-string.html


Cordialmente,

-- 
Fabrízio de Royes Mello
 Blog sobre PostgreSQL: http://fabriziomello.blogspot.com

  _  

E-mail verificado pelo Terra Anti-Spam.
Para classificar esta mensagem como spam ou não spam, clique
http://ecp.terra.com.br/cgi-bin/reportspam.cgi?+_d=SCY0MDUxNTIxMiNwZXJtIWJh
dGlzdGFyZXByZXNlbnRhY29lc2xtJjEsMTI0NjkxMjg1Mi40MjA4NjMuMjY1MDguY2FicmV0b24u
dGVycmEuY29tLDYyNjA=TerraMail  aqui.
Verifique periodicamente a pasta Spam para garantir que apenas mensagens
indesejadas sejam classificadas como Spam. 

  _  

Esta mensagem foi verificada pelo E-mail Protegido.
Atualizado em 03/07/2009

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


[pgbr-geral] Dúvidas em funções com strings ;

2009-07-06 Por tôpico Rubens José Rodrigues
Olá Lista,

 

Tenho uma dúvida, sou originário do Oracle e não consegui realizar esta
tarefa que aparentemente é elementar: 

 

Cenário: PostgreSQL 8.3.7 on x86_64-pc-linux-gnu, compiled by GCC
gcc-4.3.real (Ubuntu 4.3.2-1ubuntu11) 4.3.2

 

a) Contar a presença de uma determinada string dentro de outra string. Ex.:
strcount(‘a’,’amanhã’)(*), aqui esta função contaria a incidência da
substring ‘a’ na string ‘amanh㒠me retornado o valor 2.

 

Desde já agradeço a ajuda,

 

(*) Função criada por nós onde criamos um array com a string e navegamos
testando caracter por caracter.

 

 

 Falta de tempo é desculpa daqueles que perdem tempo por falta de métodos

 

Att.



Rubens José Rodrigues

T.I, Analista de Suporte

Tel: (27)3399-6419 / (27)9969-8081

rubens.rodrig...@batistarepresentacoes.com



Broker Nestlé do Brasil S/A

Rua José Ramos de Oliveira, 91, 29111-280

Nossa Senhora da Penha, Vila Velha, ES

(27)3399-6400 / (27)9975-0140

 

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


[pgbr-geral] Uso de aliases em comandos update.

2009-06-23 Por tôpico Rubens José Rodrigues
Opa salve galera!

 

Deparei-me com uma dúvida, estamos adaptando mais um módulo (que funciona em
Oracle) no PostgreSQL e tentei sem sucesso o uso de aliases em comandos
update, relendo a documentação vi que é possivel, mas na prática devo estar
errando em algo, será que podem me ajudar?

 

Cenário:

PostgreSQL 8.3.7 on x86_64-pc-linux-gnu, compiled by GCC gcc-4.3.real
(Ubuntu 4.3.2-1ubuntu11) 4.3.2

 

Base  1T em UTF8.

 

 

Manual 8.3 [1]

UPDATE -- update rows of a table

Synopsis

UPDATE [ ONLY ] table [ [ AS ] alias ]

SET { column = { expression | DEFAULT } |

  ( column [, ...] ) = ( { expression | DEFAULT } [, ...] ) } [,
...]

[ FROM fromlist ]

[ WHERE condition | WHERE CURRENT OF cursor_name ]

[ RETURNING * | output_expression [ AS output_name ] [, ...] ]

Parameters

Table

The name (optionally schema-qualified) of the table to update.

 

Alias

A substitute name for the target table. When an alias is provided, it
completely hides the actual name of the table. For example, given UPDATE foo
AS f, the remainder of the UPDATEstatement must refer to this table as f not
foo.

 

 

Tentativa:

 

Update foo a set a.coluna = (select count(1) from outratabela where
codfoo=a.codfoo);

 

Erro:

 

Error: ERROR:  column a of relation foo does not exist

LINE 1: update foo a set a.coluna=(select count(1) from...

 

 

1 -  http://www.postgresql.org/docs/8.3/interactive/sql-update.html
http://www.postgresql.org/docs/8.3/interactive/sql-update.html

 

 Falta de tempo é desculpa daqueles que perdem tempo por falta de métodos

 

Att.



Rubens José Rodrigues

T.I, Analista de Suporte

Tel: (27)3399-6419 / (27)9969-8081

rubens.rodrig...@batistarepresentacoes.com



Broker Nestlé do Brasil S/A

Rua José Ramos de Oliveira, 91, 29111-280

Nossa Senhora da Penha, Vila Velha, ES

(27)3399-6400 / (27)9975-0140

 

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


[pgbr-geral] RES: Uso de aliases em comandos update.

2009-06-23 Por tôpico Rubens José Rodrigues
Muito obrigado pela ajuda

 

 

 Falta de tempo é desculpa daqueles que perdem tempo por falta de métodos

 

Att.



Rubens José Rodrigues

T.I, Analista de Suporte

Tel: (27)3399-6419 / (27)9969-8081

rubens.rodrig...@batistarepresentacoes.com



Broker Nestle do Brasil S/A

Rua José Ramos de Oliveira, 91, 29111-280

Nossa Senhora da Penha, Vila Velha, ES

(27)3399-6400 / (27)9975-0140

 

De: pgbr-geral-boun...@listas.postgresql.org.br
[mailto:pgbr-geral-boun...@listas.postgresql.org.br] Em nome de Fabrízio de
Royes Mello
Enviada em: terça-feira, 23 de junho de 2009 14:11
Para: Comunidade PostgreSQL Brasileira
Assunto: Re: [pgbr-geral] Uso de aliases em comandos update.

 

 

2009/6/23 Rubens José Rodrigues rubens.rodrig...@batistarepresentacoes.com

corte

Tentativa:

 

Update foo a set a.coluna = (select count(1) from outratabela where
codfoo=a.codfoo);

 

Erro:

 

Error: ERROR:  column a of relation foo does not exist

LINE 1: update foo a set a.coluna=(select count(1) from...

 

Caro Rubes,

Como você bem citou a documentação oficial [1] no SET do UPDATE você deve
referenciar diretamente a coluna da tabela (ou alias) que é alvo do comando.
No valor setado você pode colocar uma Tabela.Coluna, dependendo da forma
como você está escrevendo o SQL.

Tente:

Update foo a set coluna = (select count(1) from outratabela where
codfoo=a.codfoo);


[1] http://www.postgresql.org/docs/8.3/interactive/sql-update.html

-- 
Fabrízio de Royes Mello
 Blog sobre PostgreSQL: http://fabriziomello.blogspot.com

  _  

E-mail verificado pelo Terra Anti-Spam.
Para classificar esta mensagem como spam ou não spam, clique
http://ecp.terra.com.br/cgi-bin/reportspam.cgi?+_d=SCY0MDUxNTIxMiNwZXJtIWJh
dGlzdGFyZXByZXNlbnRhY29lc2xtJjEsMTI0NTc3NzA1OS42Mjk5NTkuMTY5NzguZ2FuYW5vcXVl
LnRlcnJhLmNvbSw2MzU0TerraMail  aqui.
Verifique periodicamente a pasta Spam para garantir que apenas mensagens
indesejadas sejam classificadas como Spam. 

  _  

Esta mensagem foi verificada pelo E-mail Protegido.
Atualizado em 23/06/2009

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


[pgbr-geral] RES: [Spam] Re: RES:RES: Duvidas quanto funcionamento anormal (ou sou eu) de function.

2009-04-17 Por tôpico Rubens José Rodrigues
Bingo!

Muito obrigado!

Att.

Rubens José Rodrigues
T.I, Analista de Suporte
Tel: (27)3399-6419 / (27)9969-8081
rubens.rodrig...@batistarepresentacoes.com

Broker Nestle do Brasil S/A
Rua José Ramos de Oliveira, 91, 29111-280
Nossa Senhora da Penha, Vila Velha, ES
(27)3399-6400 / (27)9975-0140

-Mensagem original-
De: Osvaldo Kussama [mailto:osvaldo.kuss...@gmail.com] 
Enviada em: quinta-feira, 16 de abril de 2009 17:03
Para: rubens.rodrig...@batistarepresentacoes.com
Assunto: Re: [Spam] Re: [pgbr-geral] RES:RES: Duvidas quanto funcionamento
anormal (ou sou eu) de function.

2009/4/16 Rubens José Rodrigues
rubens.rodrig...@batistarepresentacoes.com:
 Então, ficaríamos assim :

  // Aqui eu determino que o intervalo será de 10 em 10 minutos
  i:=10;

  -- Abrindo o cursor e entrando em loop
  open _Registro;
  loop
    fetch _Registro into Registro;
    exit when not found;

 - Aqui vData pegará a data e hora atual (current_timestamp) + o
 intervalo (i), certo, por exemplo se agora (current_timestamp) é
'16/04/2009
 16:20', logo vData+intervalo(i) será '16/04/2009 16:30', certo?
    vData :=(current_timestamp + (i*1||' minutes')::interval) as time;

Aqui está o problema.
Quando você coloca as time você está desprezando a parte referente a
dia/mês/ano e ficando só com de hora para baixo.

bdteste=# SELECT current_timestamp;
  now
---
 2009-04-16 17:01:17.780008-03
(1 registro)

bdteste=# SELECT cast(current_timestamp as time);
   now
-
 17:01:37.960057
(1 registro)


 - Já aqui coloquei um check, onde se vData atual com cast (ou seja
 pegando apenas as horas da variavel) for superior ou igual a 18h ignore o
 update da agenda.
    if cast(vData as time)='18:00:00' then


 Se for isto, não deu certo.


Osvaldo

E-mail verificado pelo Terra Anti-Spam.
Para classificar esta mensagem como spam ou não spam, visite
http://mail.terra.com.br/cgi-bin/reportspam.cgi?+_d=SCY0MDUxNTIxMiNwZXJtIWJh
dGlzdGFyZXByZXNlbnRhY29lc2xtJjEsMTIzOTkxMjE1NS4zNjUyMi4xNDk0Mi5kcmVzZGVuLnRl
cnJhLmNvbSwzNzkzTerraMail
Verifique periodicamente a pasta Spam para garantir que apenas mensagens
indesejadas sejam classificadas como Spam.

Esta mensagem foi verificada pelo E-mail Protegido.
Atualizado em 16/04/2009


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


[pgbr-geral] Duvidas quanto funcionamento anormal (ou sou eu) de function.

2009-04-16 Por tôpico Rubens José Rodrigues
Pessoal,

 

Estou com um pequeno problema (que está me tirando o sono), por favor,
ajudem-me.

 

Cenário: PostgreSQL 8.3.6 on x86_64-pc-linux-gnu, compiled by GCC
gcc-4.3.real (Ubuntu 4.3.2-1ubuntu12) 4.3.2.

 

Problema: A função abaixo “deveria” organizar uma tabela de agendamento
(somente o horário), porém quando “chamo” a function ela coloca qualquer
horário menos o atual mais o intervalo, somente depois da terceira ou quarta
tentativa é que funciona.

 

O cliente pode ser tanto o Delphi, quanto o psql, quanto outro qualquer que
o problema persiste.

 

Abaixo segue a função, observem que existe um parâmetro de entrada (não o
uso por enquanto).

 

Repetindo, supondo que existam horários na agenda (registros) nos horários
de 8h, 9h, 10h e agora são 12h e “chamo” a function para atualizar a agenda
para reordenar por exemplo o que é 8h passaria para 12:10h (devido ao
intervalo) e assim por diante, mas, o sistema coloca qualquer horário menos
o que deveria ser (agora now()).

 

CREATE OR REPLACE FUNCTION public.fnc_titulovenc_controle_agenda
(eCodCli integer) RETURNS boolean AS

$body$

DECLARE

   -- Cursor para registros da agenda

   _Registro cursor for  select codcli,

data

   from titulosvenc_agenda

  where cast(data as date)=current_date

and horafim is null

and automatico='S'

  order by data asc;

   

   -- Variavel que recebera o resultset do cursor

   Registro record;



   -- Variavel para intervalo de tempo em minutos

   i integer;

   

   -- Valor de referencia para o horario de fim

   vData timestamp;

BEGIN

 -- Determinando o intervalo

 i:=10; 

 

 -- Abrindo o cursor

 open _Registro;

 

 

 loop

   fetch _Registro into Registro;

   exit when not found;

 

   vData :=(now() + (i||' minutes')::interval) as time;

   

   if cast(vData as time)='18:00:00' then

 

 -- Atualizando a agenda

 update titulosvenc_agenda 

set data= vData

  where codcli=registro.codcli

and cast(data as date)=current_date;

 

 -- Atualizando a folha de rosto de cobrança

 update titulosvenc set dataagenda=vData where codcli=registro.codcli;

 

   end if; 

   

   i:=i+10;

 end loop;

 

close _Registro;

 

return true;

END;

$body$

LANGUAGE 'plpgsql' VOLATILE CALLED ON NULL INPUT SECURITY INVOKER;

 

Conto com a ajuda de vocês,

 

Att.



Rubens José Rodrigues

T.I, Analista de Suporte

Tel: (27)3399-6419 / (27)9969-8081

rubens.rodrig...@batistarepresentacoes.com



Broker Nestlé do Brasil S/A

Rua José Ramos de Oliveira, 91, 29111-280

Nossa Senhora da Penha, Vila Velha, ES

(27)3399-6400 / (27)9975-0140

 

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


[pgbr-geral] RES:RES: Duvidas quanto funcionamento anormal (ou sou eu) de function.

2009-04-16 Por tôpico Rubens José Rodrigues
Osvaldo,

 

Não, o cast ali (vData :=(now() + (i||' minutes')::interval) as time;) a
variavel deveria pegar o “agora” mais o interval em minutos (exemplo
agora=data hoje + 09:00 + intervalo de i minutos).

 

Já aqui (if cast(vData as time)='18:00:00'), ai sim, se pegando somente o
horario da variavel e for igual ou superior a 18h ignore o bloco de comando.

 

 

 

 

2009/4/16 Rubens José Rodrigues rubens.rodrigues
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral  em
batistarepresentacoes.com:

 

 

 Estou com um pequeno problema (que está me tirando o sono), por favor,

 ajudem-me.

 

 Cenário: PostgreSQL 8.3.6 on x86_64-pc-linux-gnu, compiled by GCC

 gcc-4.3.real (Ubuntu 4.3.2-1ubuntu12) 4.3.2.

 

 Problema: A função abaixo “deveria” organizar uma tabela de agendamento

 (somente o horário), porém quando “chamo” a function ela coloca qualquer

 horário menos o atual mais o intervalo, somente depois da terceira ou
quarta

 tentativa é que funciona.

 

 O cliente pode ser tanto o Delphi, quanto o psql, quanto outro qualquer
que

 o problema persiste.

 

 Abaixo segue a função, observem que existe um parâmetro de entrada (não o

 uso por enquanto).

 

 Repetindo, supondo que existam horários na agenda (registros) nos horários

 de 8h, 9h, 10h e agora são 12h e “chamo” a function para atualizar a
agenda

 para reordenar por exemplo o que é 8h passaria para 12:10h (devido ao

 intervalo) e assim por diante, mas, o sistema coloca qualquer horário
menos

 o que deveria ser (agora now()).

 

 

 CREATE OR REPLACE FUNCTION public.fnc_titulovenc_controle_agenda

 (eCodCli integer) RETURNS boolean AS

 

 $body$

 

 DECLARE

-- Cursor para registros da agenda

_Registro cursor for  select codcli,

 data

from titulosvenc_agenda

   where cast(data as date)=current_date

 and horafim is null

 and automatico='S'

   order by data asc;

 

-- Variavel que recebera o resultset do cursor

Registro record;

 

-- Variavel para intervalo de tempo em minutos

i integer;

 

-- Valor de referencia para o horario de fim

vData timestamp;

 

 BEGIN

 

  -- Determinando o intervalo

  i:=10;

 

  -- Abrindo o cursor

  open _Registro;

  loop

fetch _Registro into Registro;

exit when not found;

 

vData :=(now() + (i||' minutes')::interval) as time;

 

Creio que com este cast você está armazenando em vData apenas a hora,

min, seg etc do dia, você está desprezando a parte referente a data, é

isto mesmo?

 

Recomenda-se fazer: i*'1 minute'::interval.

 

 

 

if cast(vData as time)='18:00:00' then

 

  -- Atualizando a agenda

  update titulosvenc_agenda

 set data= vData

   where codcli=registro.codcli

 and cast(data as date)=current_date;

 

  -- Atualizando a folha de rosto de cobrança

  update titulosvenc set dataagenda=vData where codcli=registro.codcli;

end if;

i:=i+10;

  end loop;

 close _Registro;

 return true;

 END;

 $body$

 LANGUAGE 'plpgsql' VOLATILE CALLED ON NULL INPUT SECURITY INVOKER;

 

 

Osvaldo

 

Pessoal,

 

Estou com um pequeno problema (que está me tirando o sono), por favor,
ajudem-me.

 

Cenário: PostgreSQL 8.3.6 on x86_64-pc-linux-gnu, compiled by GCC
gcc-4.3.real (Ubuntu 4.3.2-1ubuntu12) 4.3.2.

 

Problema: A função abaixo “deveria” organizar uma tabela de agendamento
(somente o horário), porém quando “chamo” a function ela coloca qualquer
horário menos o atual mais o intervalo, somente depois da terceira ou quarta
tentativa é que funciona.

 

O cliente pode ser tanto o Delphi, quanto o psql, quanto outro qualquer que
o problema persiste.

 

Abaixo segue a função, observem que existe um parâmetro de entrada (não o
uso por enquanto).

 

Repetindo, supondo que existam horários na agenda (registros) nos horários
de 8h, 9h, 10h e agora são 12h e “chamo” a function para atualizar a agenda
para reordenar por exemplo o que é 8h passaria para 12:10h (devido ao
intervalo) e assim por diante, mas, o sistema coloca qualquer horário menos
o que deveria ser (agora now()).

 

CREATE OR REPLACE FUNCTION public.fnc_titulovenc_controle_agenda
(eCodCli integer) RETURNS boolean AS

$body$

DECLARE

   -- Cursor para registros da agenda

   _Registro cursor for  select codcli,

data

   from titulosvenc_agenda

  where cast(data as date)=current_date

and horafim is null

and automatico='S'

  order by data asc;

   

   -- Variavel que recebera o resultset do cursor

   Registro record;



   -- Variavel para intervalo de tempo em minutos

[pgbr-geral] RES: [Spam] Re: RES:RES: Duvidas quanto funcionamento anormal (ou sou eu) de function.

2009-04-16 Por tôpico Rubens José Rodrigues
Então, ficaríamos assim :

  // Aqui eu determino que o intervalo será de 10 em 10 minutos
  i:=10;

  -- Abrindo o cursor e entrando em loop
  open _Registro;
  loop
fetch _Registro into Registro;
exit when not found;

- Aqui vData pegará a data e hora atual (current_timestamp) + o
intervalo (i), certo, por exemplo se agora (current_timestamp) é '16/04/2009
16:20', logo vData+intervalo(i) será '16/04/2009 16:30', certo?
vData :=(current_timestamp + (i*1||' minutes')::interval) as time;

- Já aqui coloquei um check, onde se vData atual com cast (ou seja
pegando apenas as horas da variavel) for superior ou igual a 18h ignore o
update da agenda.
if cast(vData as time)='18:00:00' then


Se for isto, não deu certo.

Att.

Rubens José Rodrigues
T.I, Analista de Suporte
Tel: (27)3399-6419 / (27)9969-8081
rubens.rodrig...@batistarepresentacoes.com

Batista Coml. Log. Representações Ltda.
Rua José Ramos de Oliveira, 91, 29111-280
Nossa Senhora da Penha, Vila Velha, ES
(27)3399-6400 / (27)9975-0140


-Mensagem original-
De: Osvaldo Kussama [mailto:osvaldo.kuss...@gmail.com] 
Enviada em: quinta-feira, 16 de abril de 2009 16:15
Para: rubens.rodrig...@batistarepresentacoes.com; Comunidade PostgreSQL
Brasileira
Assunto: [Spam] Re: [pgbr-geral] RES:RES: Duvidas quanto funcionamento
anormal (ou sou eu) de function.

2009/4/16 Rubens José Rodrigues
rubens.rodrig...@batistarepresentacoes.com:

 Não, o cast ali (vData :=(now() + (i||' minutes')::interval) as time;) a
 variavel deveria pegar o “agora” mais o interval em minutos (exemplo
 agora=data hoje + 09:00 + intervalo de i minutos).

Então retire o cast para time ou faça este cast para timestamp.



 Já aqui (if cast(vData as time)='18:00:00'), ai sim, se pegando somente o
 horario da variavel e for igual ou superior a 18h ignore o bloco de
comando.

Se vData contiver um timestamp então tudo bem mas você havia
armazenado apenas um time.


Osvaldo

E-mail verificado pelo Terra Anti-Spam.
Para classificar esta mensagem como spam ou não spam, visite
http://mail.terra.com.br/cgi-bin/reportspam.cgi?+_d=UyY0MDUxNTIxMiNwZXJtIWJh
dGlzdGFyZXByZXNlbnRhY29lc2xtJjEsMTIzOTkwOTI3NS45OTAzMjcuMzQ2OS5xdWVzbmVsLnRl
cnJhLmNvbSwzMDc0TerraMail
Verifique periodicamente a pasta Spam para garantir que apenas mensagens
indesejadas sejam classificadas como Spam.

Esta mensagem foi verificada pelo E-mail Protegido.
Atualizado em 16/04/2009


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


[pgbr-geral] Duvida quanto ao uso ou não do row limit nesta query.

2009-03-27 Por tôpico Rubens José Rodrigues
Pessoal,

 

Tenho uma necessidade de que a query abaixo me retorne o limite de 60
registros diminuindo a quantidade x de uma variavel (vTotAgendaDia).

 

Ou seja:

 

Estou pegando os 60 maiores devedores da empresa para agendar um contato,
este contato se dá por meio de uma tabela de agendamento, de posse dos
registros eu faço um loop e insiro na ordem nesta tabela de agendamento.
Porém se para o dia x existir registros agendados (manualmente) eu preciso
contar antes e diminuir do limit inicial (ex.: ... limit-x).

 

Quando eu uso uma subquery na clausula limit o PostgreSQL não permite, se eu
uso uma variável ele diz que não existe a coluna xx (nome da variável),
como eu poderia resolver isto?

 

Lembrando que está tudo dentro de uma function e não de uma query isolada.

 

select distinct(a.codcli), 

 b.especial, 

 sum(a.valor) as valor 

  from titulosvenc a 

 inner join clientes b on a.codcli=b.codcli 

 where a.codcli not in (select codcli from titulosvenc_agenda where
cast(data as date)=current_date) 

  group by a.codcli,b.especial order by b.especial desc,sum(a.valor) desc,
a.codcli limit 60 – vTotAgendaDia

 

 

Desde já agradeço

 

Att.



Rubens José Rodrigues

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


[pgbr-geral] RES: Backup/restore de uma tabela.

2009-03-26 Por tôpico Rubens José Rodrigues
Olá,

Qual a versão do PostgreSQL?
Qual a mensagem de erro apresentada?
Tentou fazer por linha de código?
Qual a sintaxe usada para fazer o backup?
Qual a sintaxe usada para restaurar o backup?

Att.

Rubens José Rodrigues
T.I, Analista de Suporte
Tel: (27)3399-6419 / (27)9969-8081
rubens.rodrig...@batistarepresentacoes.com

Broker Nestlé do Brasil S/A
Rua José Ramos de Oliveira, 91, 29111-280
Nossa Senhora da Penha, Vila Velha, ES
(27)3399-6400 / (27)9975-0140

-Mensagem original-
De: pgbr-geral-boun...@listas.postgresql.org.br
[mailto:pgbr-geral-boun...@listas.postgresql.org.br] Em nome de Pedro B.
Alves
Enviada em: quinta-feira, 26 de março de 2009 09:25
Para: Comunidade PostgreSQL Brasileira
Assunto: [pgbr-geral] Backup/restore de uma tabela.

Bom dia pessoal, estou com o seguinte problema...

estou fazendo o backup de uma tabela de um shema e tentando restaurar
ela em outro. e não consigo. alguém tem alguma dica desse
procedimento;

oq estou fazendo:
no pgAdmin, faço o backup da tabela.

ainda pelo pgAdmin tento fazer o restore da tabela.

a tabela que estou fazendo o backup é a tclientes

e estou tentando restaurar em uma tabela vazia chamada a.

e não faz nada. nem cria os campos e muito menos os dados.

Estou usando windows xp. e vista. o postgresql-8.2...

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

Esta mensagem foi verificada pelo E-mail Protegido Terra.
Atualizado em 26/03/2009


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


[pgbr-geral] SQL Error : Invalid Sequence for en coding UTF8:0xe17269 === Já aplicado o dump com o encoding desejado, server etc.

2009-02-10 Por tôpico Rubens José Rodrigues
Pessoal,

 

Vi que o assunto é recorrente não só aqui na lista quanto no “mundo” afora e
sinceramente ainda não consegui “pegar” o fio da meada para solucionar este
problema que aparentemente parece ser alguma “rateada” minha.

 

Minha história: necessidade de troca de servidor e portar o banco para
suporte a multi-idiomas.

 

Nosso cenário: 

 (HW) Server Dell 4 x Quad Core -- 32 GB RAM -- Raid 0+10 com 8
discos SAS 15k -- 

 (SW) PostgreSQL 8.3.5 on x86_64-pc-linux-gnu, compiled by GCC
gcc-4.3.real (Ubuntu 4.3.2-1ubuntu11) 4.3.2

   Client/Server com ZeosLib / Delphi

   Web Services -- Java / .net

(Base) 365 GB

 

Passos:

   a) O servidor (ainda) atual de produção está com a codificação
WIN1552 e com o sistema operacional e aplicativos devidamente configurado e
funcionando.

 

   b) Fizemos um dump da base usando a opção extra “ –E UTF8”

 

   c) No novo servidor já com o ambiente devidamente configurado para
UTF8 e com o banco criado para UTF8, depois de criado importamos o arquivo e
pronto... Base no ar (ledo engano). . . Que beleza, fomos para testes
maciços e para nossa surpresa a mensagem de erro na seqüência de
codificação.  

 

Já tentamos o iconv (mas ele não suporta o win1252) e nada.

 

Onde será que erramos ou o que nos faltou, será que podem me indicar o
“caminho das pedras”?

 

Desde já agradeço a atenção,

 

Att.



Rubens José Rodrigues

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


[pgbr-geral] RES: SQL Error : Invalid Sequenc e for encoding UTF8:0xe17269 === Já ap licado o dump com o encoding desejado, server etc .

2009-02-10 Por tôpico Rubens José Rodrigues
Opa,

Tem razão o correto é WIN1252 (onde lê-se WIN1552).
Na verdade é o que estamos fazendo, mapear o aplicativo atrás de algum envio
incorreto de encoding.

Uma peculiaridade encontrada é que sempre em consultas (select yyy from xxx
order by zzz) livres e simples é que acontecem o erro, em transações
complexas, views, functions etc. etc. etc. não.

Preciso de férias... RS... E ainda dizem que ganho fácil...

Att.
--
Rubens José Rodrigues
--


-Mensagem original-
De: Osvaldo Kussama [mailto:osvaldo.kuss...@gmail.com] 
Enviada em: terça-feira, 10 de fevereiro de 2009 15:06
Para: rubens.rodrig...@batistarepresentacoes.com; Comunidade PostgreSQL
Brasileira
Assunto: Re: [pgbr-geral] SQL Error : Invalid Sequence for encoding
UTF8:0xe17269 === Já aplicado o dump com o encoding desejado, server etc.

2009/2/10 Rubens José Rodrigues
rubens.rodrig...@batistarepresentacoes.com:

 Vi que o assunto é recorrente não só aqui na lista quanto no mundo afora
e
 sinceramente ainda não consegui pegar o fio da meada para solucionar
este
 problema que aparentemente parece ser alguma rateada minha.

 Minha história: necessidade de troca de servidor e portar o banco para
 suporte a multi-idiomas.

 Nosso cenário:

  (HW) Server Dell 4 x Quad Core -- 32 GB RAM -- Raid 0+10 com 8
 discos SAS 15k --

  (SW) PostgreSQL 8.3.5 on x86_64-pc-linux-gnu, compiled by GCC
 gcc-4.3.real (Ubuntu 4.3.2-1ubuntu11) 4.3.2

Client/Server com ZeosLib / Delphi

Web Services -- Java / .net

 (Base) 365 GB

 Passos:

a) O servidor (ainda) atual de produção está com a codificação
 WIN1552 e com o sistema operacional e aplicativos devidamente configurado
e
 funcionando.

b) Fizemos um dump da base usando a opção extra  –E UTF8

c) No novo servidor já com o ambiente devidamente configurado para
 UTF8 e com o banco criado para UTF8, depois de criado importamos o arquivo
e
 pronto... Base no ar (ledo engano). . . Que beleza, fomos para testes
 maciços e para nossa surpresa a mensagem de erro na seqüência de
 codificação.

 Já tentamos o iconv (mas ele não suporta o win1252) e nada.

 Onde será que erramos ou o que nos faltou, será que podem me indicar o
 caminho das pedras?



Bom WIN1552 não é suportado pelo PostgreSQL. Vou presumir que é
WIN1252 e, nesta condição, seu dump deveria ter sido corretamente
convertido.

A tabela 22-2  informa:
- Server Character Set: WIN1252
- Available Client Character Sets: WIN1252, UTF8
em: http://www.postgresql.org/docs/current/interactive/multibyte.html
portanto a conversão WIN1252 - UTF8 é feita pelo PostgreSQL.

Um iconv --list exibe  WINDOWS-1252 como um dos conjuntos de
caracteres que ele conhece. Talvez seja uma questão de nome correto.

É possível que algum cliente tenha informado o encoding incorreto ao
atualizar algum dado de seu bd?

Osvaldo

Esta mensagem foi verificada pelo E-mail Protegido Terra.
Atualizado em 10/02/2009


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


[pgbr-geral] Dicas para um bom logging no PostgreSQL.

2009-02-05 Por tôpico Rubens José Rodrigues
Pessoal,

Bom dia a todos!

 

Hoje, acordei com a missão de avaliar o log do PostgreSQL em busca de
algumas informações que ocorreram durante a semana , e me deparei com a
dúvida: “Será que o que estamos coletando realmente é o suficiente ou
podemos otimizar o que coletamos?”, partindo do pressuposto que “informação
é tudo” e “quem tem informação, tem a ferramenta na mão”, e, levando em
consideração que “cada caso é um caso “, eu pergunto a vocês, será que itens
abaixo é o suficiente para termos um log digno do exposto ou indicam uma
abordagem complementar/diferente?

 

Cenário:

Ubuntu Server 8.10 64 Bits

PostgreSQL 8.3.5 on X86_64-pc-linux-gnu

Tamanho da base: 296 GB -- ERP / CRM

 

 

Postgresql.conf:

 

  ONDE 

log_destination   = ‘stderr’

logging_collector =on

log_directory= ‘/sistemas/unionr/log’

log_filename= ‘unionr-%Y-%m-%d_%H%M%S.log’

log_rotation_age= 1d

log_rotation_size= 15MB

 

 

  QUANDO 

Client_min_messages = notice

Log_min_messages = notice

Log_min_error_statement = error

 

  O QUE 

Log_connections = on

Log_disconnections = on

Log_durarion = on

Log_line_prefix = ‘%t %u %r’

 

 

 

Desde já agradeço,

 

Att.



Rubens José Rodrigues

 

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


[pgbr-geral] Incrementar intervalo de tempo via trigger (function) --- Onde eu errei me ajudem!

2008-12-29 Por tôpico Rubens José Rodrigues
Pessoal,

Preciso da orientação e ajuda de vocês.

 

Scenario:

PostgreSQL 8.3.3, compiled by Visual C++ build 1400

Windows Vista

Delphi 7 / 2009 --- ZeosLib 6.6.4-stable

 

Tabela A 

CODPROB INTEGER;

PRAZOHORAS INTEGER;



 

Tabela B

CODHLP   INTEGER;

CODPROB   INTEGER ; à FK TABELA A 

DATAPREV TIMESTAMP;



 

Trigger

 

CREATE TRIGGER trg_teste BEFORE INSERT OR UPDATE 

ON public.teste FOR EACH ROW 

EXECUTE PROCEDURE public.fnc_teste();

 

Necessidade :

Ao inserir/atualizar um registro na tabela B, preciso atualizar o campo
DATAPREV da tabela B em X horas baseado no campo PRAZOHORAS da tabela A.

Estou usando o método :



Declare vNovaDataHora Timestamp;

...

select new.dataprev  +' interval'|| vPrazo||' hours' into vNovaDataHora;

...

 

Mensagem de Erro:

Invalid input for type interval;

 

 

 

Bom já vi de cara que não posso colocar o interval entre aspas ou seja está
errado o que estou tentando fazer.

 

Então pergunto, como devo proceder para via trigger ao inserir/atualizar um
campo do tipo data/hora/timestamp adicionar/remover um intervalo de tempo ?

 

Desde já agradeço,

 

 

 

Att.



Rubens José Rodrigues

 

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


[pgbr-geral] RES: Incrementar intervalo de tempo via trigger (function) --- Onde eu errei me ajudem!

2008-12-29 Por tôpico Rubens José Rodrigues
Não, ela não está vazia . . . mesmo se eu colocar fixamente o valor
vPrazo:=1 ela apresenta erro

Att.

Rubens José Rodrigues

-Mensagem original-
De: Shairon Toledo [mailto:shairon.tol...@gmail.com] 
Enviada em: segunda-feira, 29 de dezembro de 2008 16:08
Para: rubens.rodrig...@batistarepresentacoes.com; Comunidade PostgreSQL
Brasileira
Assunto: Re: [pgbr-geral] Incrementar intervalo de tempo via trigger
(function) --- Onde eu errei me ajudem!

talvez sua var vPrazo está vazia

2008/12/29 Rubens José Rodrigues
rubens.rodrig...@batistarepresentacoes.com:
 Pessoal,

 Preciso da orientação e ajuda de vocês.



 Scenario:

 PostgreSQL 8.3.3, compiled by Visual C++ build 1400

 Windows Vista

 Delphi 7 / 2009 --- ZeosLib 6.6.4-stable



 Tabela A

 CODPROB INTEGER;

 PRAZOHORAS INTEGER;

 



 Tabela B

 CODHLP   INTEGER;

 CODPROB   INTEGER ; à FK TABELA A

 DATAPREV TIMESTAMP;

 



 Trigger



 CREATE TRIGGER trg_teste BEFORE INSERT OR UPDATE

 ON public.teste FOR EACH ROW

 EXECUTE PROCEDURE public.fnc_teste();



 Necessidade :

 Ao inserir/atualizar um registro na tabela B, preciso atualizar o campo
 DATAPREV da tabela B em X horas baseado no campo PRAZOHORAS da tabela A.

 Estou usando o método :

 

 Declare vNovaDataHora Timestamp;

 ...

 select new.dataprev  +' interval'|| vPrazo||' hours' into vNovaDataHora;

 ...



 Mensagem de Erro:

 Invalid input for type interval;







 Bom já vi de cara que não posso colocar o interval entre aspas ou seja
está
 errado o que estou tentando fazer.



 Então pergunto, como devo proceder para via trigger ao inserir/atualizar
um
 campo do tipo data/hora/timestamp adicionar/remover um intervalo de tempo
?



 Desde já agradeço,







 Att.




 Rubens José Rodrigues



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





-- 
[ ]'s
Shairon Toledo
http://www.hashcode.eti.br

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


[pgbr-geral] RES: Verificar String e deteremina r se é alfa ou numérico.

2008-12-16 Por tôpico Rubens José Rodrigues
Bingo 2 . . . 
Obrigado Dickson . . . 

Att.

Rubens José Rodrigues


-Mensagem original-
De: pgbr-geral-boun...@listas.postgresql.org.br
[mailto:pgbr-geral-boun...@listas.postgresql.org.br] Em nome de Dickson S.
Guedes
Enviada em: terça-feira, 16 de dezembro de 2008 13:32
Para: Comunidade PostgreSQL Brasileira
Assunto: Re: [pgbr-geral] Verificar String e detereminar se é alfa ou
numérico.

Rubens José Rodrigues escreveu:
 (...)

 Minha necessidade:

 Verificar uma string, numa posição qualquer, se é alfa ou numérico 
 hoje estou fazendo na “unha” algo funcional porém acredito não se a 
 forma mais elegante de testar.


Fazendo jus à Navalha de Ockham

Via banco utilizando uma string completa:

# SELECT 'UmNoMeQuAlQUeR' ~* '^[A-Za-z]+$';
?column?
--
t
(1 registro)

# SELECT 'UmNoMeQuAlQUeR_C0m_Num3r0s' ~* '^[A-Za-z]+$';
?column?
--
f
(1 registro)


Via banco utilizando parte de uma string completa:

# SELECT SUBSTRING('UmNoMeQuAlQUeR_C0m_Num3r0s',3,6) ~* '^[A-Za-z]+$';
?column?
--
t
(1 registro)

# SELECT SUBSTRING('UmNoMeQuAlQUeR_C0m_Num3r0s',15,10) ~* '^[A-Za-z]+$';
?column?
--
f
(1 registro)



Em C ou C++ você também pode fazer uso de expressão regular.

[]s

-- 
Dickson S. Guedes
Administrador de Banco de Dados
Confesol - Projeto Colmeia
Florianopolis, SC, Brasil
(48) 3322-1185, ramal: 26

___
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


[pgbr-geral] RES: Verificar String e deteremina r se é alfa ou numérico.

2008-12-16 Por tôpico Rubens José Rodrigues
Bingo . . . 

Obrigado Pessoal em especial Osvaldo.

Att.

Rubens José Rodrigues

-Mensagem original-
De: Osvaldo Kussama [mailto:osvaldo.kuss...@gmail.com] 
Enviada em: terça-feira, 16 de dezembro de 2008 11:47
Para: rubens.rodrig...@batistarepresentacoes.com; Comunidade PostgreSQL
Brasileira
Assunto: Re: [pgbr-geral] Verificar String e detereminar se é alfa ou
numérico.

Em 16/12/08, Rubens José
Rodriguesrubens.rodrig...@batistarepresentacoes.com escreveu:

 Meu cenário:

 PostgreSQL 8.3.3, compiled by Visual C++ build 1400

 Windows Vista

 Minha necessidade:

 Verificar uma string, numa posição qualquer, se é alfa ou numérico hoje
 estou fazendo na unha algo funcional porém acredito não se a forma mais
 elegante de testar.



Verifique se é isto ajuda:

bdteste=# SELECT (substring('ABC12345', 2, 1) ~* '[[:digit:]]') AS É
numérico;
 É numérico

 f
(1 registro)

bdteste=# SELECT (substring('ABC12345', 4, 1) ~* '[[:digit:]]') AS É
numérico;
 É numérico

 t
(1 registro)

bdteste=# SELECT (substring('ABC12345', 2, 1) ~* '[[:alpha:]]') AS É
alfabético;
 É alfabético
--
 t
(1 registro)

bdteste=# SELECT (substring('ABC12345', 4, 1) ~* '[[:alpha:]]') AS É
alfabético;
 É alfabético
--
 f
(1 registro)

Veja:
http://www.postgresql.org/docs/current/interactive/functions-string.html
http://www.postgresql.org/docs/current/interactive/functions-matching.html#F
UNCTIONS-POSIX-REGEXP

Osvaldo

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


[pgbr-geral] Verificar String e detereminar se é alfa ou numérico.

2008-12-16 Por tôpico Rubens José Rodrigues
Pessoal,

 

Meu cenário:

PostgreSQL 8.3.3, compiled by Visual C++ build 1400

Windows Vista

 

Minha necessidade:

Verificar uma string, numa posição qualquer, se é alfa ou numérico hoje
estou fazendo na “unha” algo funcional porém acredito não se a forma mais
elegante de testar.

Será que podem me ajudar?

 

 

Desde já agradeço,

 

 

Att.



Rubens José Rodrigues

 

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


[pgbr-geral] Problema com sequence : criando int ervalo involuntário.

2008-11-14 Por tôpico Rubens José Rodrigues
Pessoal,

 

Eu já tive este problema mas sinceramente deu “branco” aqui e não havia
documentado.

 

Cenário:

 

Estrutura

Windows Vista

PostgreSQL 8.3.3, compiled by Visual C++ build 1400

Zeos 6.6.2-RC

 

Lógica 

create sequence seq_foo start with 1;

create table foo (seq bigint default (‘seq_foo’::regclass), texto
varchar(1));

 

No PSQL :

Insert into foo (texto) values (‘a’);

Insert into foo (texto) values (‘b’);

Insert into foo (texto) values (‘c’);

 

Via Delphi/Zeos

Mesmo item acima numa query.

 

Problema :

Ao pegar o result set da tabela acima o seqüencial está :

 

seqtexto

1   a

3 b

5  c

 

 

Ou seja ele está “pulando” a seqüencia, mesmo sabendo que não tenho uma
trigger para isto e ou não tenho outras transações usando esta sequence.

 

Alguém poderia me ajudar?

 

 

 

 

 

 

 

 

Att.



Rubens José Rodrigues

 

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


[pgbr-geral] RES: Problema com sequence : cri ando intervalo involuntário.

2008-11-14 Por tôpico Rubens José Rodrigues
Opa . . .

 

Tentei e nada . . .

O engraçado é que verifiquei a dependência da sequence para ver se algum
outro objeto dependia dele e nada . . .

 

 

 

Att.



Rubens José Rodrigues

 

De: Rafael Sousa [mailto:[EMAIL PROTECTED] 
Enviada em: sexta-feira, 14 de novembro de 2008 12:19
Para: [EMAIL PROTECTED]; Comunidade PostgreSQL
Brasileira
Assunto: Re: [pgbr-geral] Problema com sequence : criando intervalo
involuntário.

 

tenta criar a sequence assim:

CREATE SEQUENCE nomedaseq
  INCREMENT 1
  MINVALUE 1
  MAXVALUE 9223372036854775807
  START 1
  CACHE 1;

até...

rafael sousa



2008/11/14 Rubens José Rodrigues
[EMAIL PROTECTED]

Pessoal,

 

Eu já tive este problema mas sinceramente deu branco aqui e não havia
documentado.

 

Cenário:

 

Estrutura

Windows Vista

PostgreSQL 8.3.3, compiled by Visual C++ build 1400

Zeos 6.6.2-RC

 

Lógica 

create sequence seq_foo start with 1;

create table foo (seq bigint default ('seq_foo'::regclass), texto
varchar(1));

 

No PSQL :

Insert into foo (texto) values ('a');

Insert into foo (texto) values ('b');

Insert into foo (texto) values ('c');

 

Via Delphi/Zeos

Mesmo item acima numa query.

 

Problema :

Ao pegar o result set da tabela acima o seqüencial está :

 

seqtexto

1   a

3 b

5  c

 

 

Ou seja ele está pulando a seqüencia, mesmo sabendo que não tenho uma
trigger para isto e ou não tenho outras transações usando esta sequence.

 

Alguém poderia me ajudar?

 

 

 

 

 

 

 

 

Att.



Rubens José Rodrigues

 


___
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


[pgbr-geral] RES: Problema com sequence : c riando intervalo involuntário.

2008-11-14 Por tôpico Rubens José Rodrigues
Opsss

Sim Jota eu coloquei no script, apenas aqui no email que engoli o nextval
. . . 


Att.

Rubens José Rodrigues


-Mensagem original-
De: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] Em nome de Jota
Enviada em: sexta-feira, 14 de novembro de 2008 13:44
Para: Comunidade PostgreSQL Brasileira
Assunto: Re: [pgbr-geral] Problema com sequence : criando intervalo
involuntário.

Olá,

Faltou o nextval não?

create sequence minha_sequence;

create table minha_tabela(codigo int default nextval('minha_sequence'),
nome text);

[]s

2008/11/14 Rafael Sousa [EMAIL PROTECTED]:
 tenta criar a sequence assim:

 CREATE SEQUENCE nomedaseq
   INCREMENT 1
   MINVALUE 1
   MAXVALUE 9223372036854775807
   START 1
   CACHE 1;

 até...

 rafael sousa


 2008/11/14 Rubens José Rodrigues
 [EMAIL PROTECTED]

 Pessoal,



 Eu já tive este problema mas sinceramente deu branco aqui e não havia
 documentado.



 Cenário:



 Estrutura

 Windows Vista

 PostgreSQL 8.3.3, compiled by Visual C++ build 1400

 Zeos 6.6.2-RC



 Lógica

 create sequence seq_foo start with 1;

 create table foo (seq bigint default ('seq_foo'::regclass), texto
 varchar(1));



 No PSQL :

 Insert into foo (texto) values ('a');

 Insert into foo (texto) values ('b');

 Insert into foo (texto) values ('c');



 Via Delphi/Zeos

 Mesmo item acima numa query.



 Problema :

 Ao pegar o result set da tabela acima o seqüencial está :



 seqtexto

 1   a

 3 b

 5  c





 Ou seja ele está pulando a seqüencia, mesmo sabendo que não tenho uma
 trigger para isto e ou não tenho outras transações usando esta sequence.



 Alguém poderia me ajudar?

















 Att.





 Rubens José Rodrigues



 ___
 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





-- 
João Paulo
www.dextra.com.br/postgres
PostgreSQL
___
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


[pgbr-geral] OFF-TOPIC - NOVO SERVIDOR RHEL 5 NAO RECONHECE 16 GB MEMORIA. (SERVIDOR PG)

2008-06-10 Por tôpico Rubens José Rodrigues
Pessoal,

Bom dia!!!

Iniciamos hoje a preparação do novo servidor PostgreSQL (previamente
discutido aqui formas de tunning) em nossa empresa.

Optamos por usar o RHEL 5 x86_64.

Tudo ocorreu tranquilamente (raid 10), config do PG, ambiente Java etc. . .

Porém, mesmo após o evento OS Mode Install o sistema só reconhece 3 GB de
memória, quando na verdade o main memory é de 16 GB.

Em contato com o suporte da RH tentamos alterar o grub.conf
(/boot/grub/grub.conf) para Mem=16000M e nada.

Alguém teria uma luz e saberia me informar o caminho das pedras para
resolver isto?


Desde já agradeço a todos,

Att

--
Rubens J Rodrigues
--


No virus found in this outgoing message.
Checked by AVG. 
Version: 8.0.100 / Virus Database: 270.1.0/1492 - Release Date: 09/06/2008
10:29


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


[pgbr-geral] RES: OFF-TOPIC - NOVO SERVIDOR RHEL 5 NAO RECONHECE 16 GB MEMORIA. (SERVIDOR PG)

2008-06-10 Por tôpico Rubens José Rodrigues
Nosso Servidor é um R900 da Dell.
Ainda não fiz o contato com eles, mas de ante-mão posso dizer que é
homologado.

--
Rubens J Rodrigues
Analista de Suporte - TI
   Abrevo do Brasil Distribuidora Ltda
  Phone  : 55+27+2121-8734
 Mobile : 55+27+9979-0372
  Skype-me : rjorodrigues
--


-Mensagem original-
De: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] Em nome de Aldrey
Galindo
Enviada em: terça-feira, 10 de junho de 2008 08:40
Para: Comunidade PostgreSQL Brasileira
Assunto: Re: [pgbr-geral] OFF-TOPIC - NOVO SERVIDOR RHEL 5 NAO RECONHECE 16
GB MEMORIA. (SERVIDOR PG)

Rubens,

   Tem um servidor que ajudo a administrar que possue o RHEL 5 x86_64
com kernel-2.6.18-92.1.1 (o mais novo, mais o padrão dele também
encontrou os 16G) e ele trabalha bem. Ele não teve problema de ver
toda a memória, apenas foi feito mudanças para trabalhar melhor com
elas (tuning).
   Qual o fabricante? Já perguntou para o mesmo se ele homologou o
RHEL 5? (desculpe antecipadamente a pergunta)

Abraços,
Aldrey Galindo

2008/6/10 Rubens José Rodrigues [EMAIL PROTECTED]:
 Pessoal,

 Bom dia!!!

 Iniciamos hoje a preparação do novo servidor PostgreSQL (previamente
 discutido aqui formas de tunning) em nossa empresa.

 Optamos por usar o RHEL 5 x86_64.

 Tudo ocorreu tranquilamente (raid 10), config do PG, ambiente Java etc. .
.

 Porém, mesmo após o evento OS Mode Install o sistema só reconhece 3 GB
de
 memória, quando na verdade o main memory é de 16 GB.

 Em contato com o suporte da RH tentamos alterar o grub.conf
 (/boot/grub/grub.conf) para Mem=16000M e nada.

 Alguém teria uma luz e saberia me informar o caminho das pedras para
 resolver isto?


 Desde já agradeço a todos,

 Att

 --
Rubens J Rodrigues
 --


 No virus found in this outgoing message.
 Checked by AVG.
 Version: 8.0.100 / Virus Database: 270.1.0/1492 - Release Date: 09/06/2008
 10:29


 ___
 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


No virus found in this incoming message.
Checked by AVG. 
Version: 8.0.100 / Virus Database: 270.1.0/1492 - Release Date: 09/06/2008
10:29

No virus found in this outgoing message.
Checked by AVG. 
Version: 8.0.100 / Virus Database: 270.2.0/1494 - Release Date: 10/06/2008
07:22


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


[pgbr-geral] Recebimento de Mensagens do Grupo, com problemas?

2008-05-14 Por tôpico Rubens José Rodrigues
Pessoal,

Não tenho recebido mensagens do grupo, será problema?


--
Rubens J Rodrigues
  Phone  : 55+27+2121-8734
 Mobile : 55+27+9979-0372
  Skype-me : rjorodrigues
--



No virus found in this outgoing message.
Checked by AVG. 
Version: 8.0.100 / Virus Database: 269.23.16/1432 - Release Date: 14/05/2008
07:49


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


[pgbr-geral] Dúvidas em como montar Função q ue retorne cálculos e multiplos regitros.

2008-05-14 Por tôpico Rubens José Rodrigues
Pessoal,

Até achei na internet algo que explicasse como criar funções mas
sinceramente não consegui e não entendi, vou passar o cenário e depois a
necessidade :

Cenário :

PG := PostgreSQL 8.2.4 on i686-pc-linux-gnu, compiled by GCC gcc (GCC)
3.4.3 20041212 (Red Hat 3.4.3-9.EL4)


Cenário :

TABELA A  TABELA B
CODUSUARIOSEQ
NOMEUSUARIO   CODUSUARIO REF TABELA A (CODUSUARIO)
  DATA
  DESCRICAOSERVICO
  VALOR


Necessidade :

Criar uma function passando como parâmetro de entrada o período (x,y)
fizesse um sum nos valores entre o período x e y e retornasse :

Exemplo de retorno :

CODUSUARIO  |  NOME  |  VALOR
001RUBENS   1.00
002JOSE 1.10
003RODRIGUES1.20


Sei que o São Google ajuda e muito mas não consegui entender realmente.
Fui no site do www.postgresql.org.br li quase toda a documentação que ensina
a criar function mas não ficou claro para mim.


Desde já agradeço,



--
Rubens J Rodrigues
  Phone  : 55+27+2121-8734
 Mobile : 55+27+9979-0372
  Skype-me : rjorodrigues
--



No virus found in this outgoing message.
Checked by AVG. 
Version: 8.0.100 / Virus Database: 269.23.16/1432 - Release Date: 14/05/2008
07:49


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


[pgbr-geral] AGRADECIMENTO ==== RES: Auxilio na indicação de Raid (ou não) e configuração do servidor. ==== = AGRADECIMENTO.

2008-04-29 Por tôpico Rubens José Rodrigues
Olá todos!
Bom dia

Gostaria de agradecer a importante ajuda em debater sobre as possibilidades
de portar o novo servidor.

Um abraço,

Att


--
Rubens J Rodrigues
  Skype-me : rjorodrigues
--

-Mensagem original-
De: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] Em nome de Leandro
DUTRA
Enviada em: segunda-feira, 28 de abril de 2008 15:02
Para: Comunidade PostgreSQL Brasileira
Assunto: Re: [pgbr-geral] Auxilio na indicação de Raid (ou não) e
configuração do servidor.

2008/4/28 Shander Lyrio [EMAIL PROTECTED]:

  Leandro DUTRA escreveu:

   Mas que é o nível de RAID mais seguro, isso é.

 Não entrei no mérito de o RAID 10 ser o mais ou o menos seguro. E
sim
  no texto: Nunca se usa RAIDs a não ser 10 com base de dados.

Por favor, não mexa no que outros disseram.  Não coloquei um ponto
final, continuei: '...a menos que se saiba muito bem o que se faz'.

E por favor não seja violento verbalmente, pega muito mal.

-- 
skype:leandro.gfc.dutra?chat Yahoo!: ymsgr:sendIM?lgcdutra
+55 (11) 3040 7300 r155 gTalk: xmpp:[EMAIL PROTECTED]
+55 (11) 9406 7191 ICQ/AIM: aim:GoIM?screenname=61287803
+55 (11) 5685 2219 MSN: msnim:[EMAIL PROTECTED]
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


No virus found in this incoming message.
Checked by AVG. 
Version: 8.0.100 / Virus Database: 269.23.6/1403 - Release Date: 29/04/2008
07:26

No virus found in this outgoing message.
Checked by AVG. 
Version: 8.0.100 / Virus Database: 269.23.6/1403 - Release Date: 29/04/2008
07:26


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


[pgbr-geral] RES: Auxilio na indicação de R aid (ou não) e configuração do servidor .

2008-04-25 Por tôpico Rubens José Rodrigues
A controladora é uma Array PERC 6/i SAS 3GB/S com 256 MB ECC e com bateria e
o Servidor é da Dell (R900).

--
Rubens J Rodrigues
--


-Mensagem original-
De: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] Em nome de Euler
Taveira de Oliveira
Enviada em: sexta-feira, 25 de abril de 2008 14:23
Para: Comunidade PostgreSQL Brasileira
Assunto: Re: [pgbr-geral] Auxilio na indicação de Raid (ou não) e
configuração do servidor.

Rubens José Rodrigues wrote:

 a) Intel Xeon E7310 Quad-Core de 1.60 GHZ (quatro processadores EM64T)
16 GB Ram 667 MHZ
5 discos de 500 GB SAS 15K RPM
 
Tu não disse o mais importante: a controladora.

 a) O que indicam em substituição ao RHEL?
 
Você tem que utilizar o SO que se sente mais confortável em administrar. 
Tendo em mente, é claro, que o PostgreSQL tem uma melhor performance no 
Linux e no FreeBSD.

 b) A migração para o PG 8.3 é tranqüila?
 
Sim. Aconselho-te a ler as notas de lançamento pois tivemos por exemplo 
a integração do tsearch ao backend e a remoção de algumas conversões 
implícitas. Monte um ambiente de teste para verificar se está tudo OK.

 c) Deveríamos pensar em algum tipo de RAID? 
 
Sim. Como você dispõe de poucos discos o aconselhável é o RAID 1+0. 
Aconselho-te reservar um disco (lógico -- no caso de utilizar RAID) para 
o log de transação por causa do seu volume de transações.

 d) Indicariam algum tipo de configuração para este cenário?
 
Não adiantaria chutar aqui porque não conhecemos a sua aplicação. 
Existem vários guias de performance por aí. Dê uma olhada no histórico 
da lista.


-- 
   Euler Taveira de Oliveira
   http://www.timbira.com/
___
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


[pgbr-geral] RES: Auxilio na indicação de Raid (ou não) e configuração do servidor .

2008-04-25 Por tôpico Rubens José Rodrigues
Pegando o gancho do Fábio :

a) Segurança que usaremos  (e usamos)
   Dumping do banco
   Log das Transações
   Arquive Command
   

b) Fazemos copias de segurança em Fitas DLT diariamente e nas sextas de todo
o sistema (partições que referenciam o banco).


Ao passo que sub-entendo que teoricamente estou com o mínimo possível em
termos de backup.

Neste caso se o quesito acima está correto procuramos desempenho!!!


--
Rubens J Rodrigues
  Skype-me : rjorodrigues
--

-Mensagem original-
De: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] Em nome de Fábio Telles
Rodriguez
Enviada em: sexta-feira, 25 de abril de 2008 15:15
Para: Comunidade PostgreSQL Brasileira
Assunto: Re: [pgbr-geral] Auxilio na indicação de Raid (ou não) e
configuração do servidor.

2008/4/25, Benedito A. Cruz [EMAIL PROTECTED]:
 Sim eu sei, mas aqui há uma restrição importante:  
 E a performance com RAID 5 é bastante aceitável para meu caso.



Veja que o custo não parece ser um problema neste caso uma vez que um
único disco já tem espaço suficiente para tudo. Se ele tem 5 discos,
então é porque ele deve querer algo mais. Para mim ainda fica a dúvida
entre o que é mais importante, segurança ou desempenho.

[]s
Fábio Telles
-- 
blog: http://www.midstorm.org/~telles/
e-mail / jabber: [EMAIL PROTECTED]
___
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


[pgbr-geral] RES: RES: Auxilio na indicaç ão de Raid (ou não) e configuração do servidor.

2008-04-25 Por tôpico Rubens José Rodrigues
Infelizmente não, temos um contrato de fidelidade com Dell então tudo tem de 
ser Dell durante os próximos 24 meses.

--
Rubens J Rodrigues
--


-Mensagem original-
De: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Em nome de Leandro DUTRA
Enviada em: sexta-feira, 25 de abril de 2008 15:17
Para: Comunidade PostgreSQL Brasileira
Assunto: Re: [pgbr-geral] RES: Auxilio na indicação de Raid (ou não) e 
configuração do servidor.

2008/4/25, Dickson Guedes [EMAIL PROTECTED]:
 Rubens José Rodrigues escreveu:
   A controladora é uma Array PERC 6/i SAS 3GB/S com 256 MB ECC e com bateria 
 e
   o Servidor é da Dell (R900).

  A 6/i é integrada, mas o throughput dela é bom, a escolha é boa,
  verifique apenas as questoes de suporte do driver, pois a limitação
  estará nele, para a plataforma operacional que voce optar.

  Verifique no site da Dell o driver especifico para o SO que voce precisa.

Hm, acabo de lembrar que a Dell não suporta Debian.

Ou você vai com a cara e a coragem, ou roda Red Hat mesmo.  Costuma
funcionar, mas você fica por conta do suporte — costuma funcionar
melhor que o da Dell, é mais uma questão política.  Se você confiar no
teu chefe.

Ou ainda dá tempo de pegar uma HP suportada?

-- 
skype:leandro.gfc.dutra?chat  Yahoo!: ymsgr:sendIM?lgcdutra
+55 (11) 3040 7300 r155 gTalk: xmpp:[EMAIL PROTECTED]
+55 (11) 9406 7191ICQ/AIM: aim:GoIM?screenname=61287803
+55 (11) 5685 2219MSN: msnim:[EMAIL PROTECTED]
___
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] função executada em determinado t empo

2007-10-19 Por tôpico Rubens José Rodrigues
Olá,

Caso esteja usando como S.O Linux, pode-se usar o cron, caso seja 
Windows use o agendador de tarefas.


Rubens


Emanoel Tadeu escreveu:
 Prezados,

 tenho uma função para ser executada numa tabela do postgre. porém, 
 gostaria que ela fosse exeutada a cada 3 min. como eu faria uma 
 trigger, ou outro método fazer essa temporização de função? alguma 
 sugestão?

 -- 
 --
 Emanoel Tadeu
 

 ___
 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] OFF - PGFOUINE (ERRO)

2007-10-03 Por tôpico Rubens José Rodrigues
William,

Já verifiquei tanto no syslog e stderr e nao funcionou, ele ainda nao 
reconhece o log.
Tem algum email para eu enviar e vc testar em seu ambiente o meu log?

Rubens

William Leite Araújo escreveu:
 Desculpe-me a insistência, mas olha o que o comando pgfouine --help
 mostra:

   -logtype logtype log type: syslog or stderr. Default
 is syslog.
   for stderr, you have to use the
 following  log_line_prefix: '%t [%p]: [%l-1] '


  Acredito que seja um problema.

 Em 02/10/07, Rubens José Rodrigues [EMAIL PROTECTED]
 escreveu:
   
 Pensei, nisto.
 Reli a simples documentacao do pgfouine.
 Vi que apenas pede-se para colocar log_line_prefix = 'user=%u,db=%d' o
 resto é default.

 Bom . . .

 De qualquer forma, tudo bem, eu agradeço a atenção.

 Obrigado

 William.



 William Leite Araújo escreveu:
 
Fatalmente suas linhas de LOG não estão no formato que o pgfouine
   
 aceita.
 
 Precisa ler a documentação pra configurar o servidor para logar do
   
 jeito
 
 certo...

 Em 02/10/07, Rubens José Rodrigues [EMAIL PROTECTED]
 escreveu:

   
 William,

 Este é um dos erros que aparecem :
 Unrecognized LOG or DEBUG line: user=pgsql,db=apoiorhLOG:  PARSER
 STATISTICS - log line 1
 Unrecognized LOG or DEBUG line: user=pgsql,db=apoiorhLOG:  REWRITER
 STATISTICS - log line 25
 Unrecognized LOG or DEBUG line: user=pgsql,db=apoiorhLOG:  PARSER
 STATISTICS - log line 38
 Unrecognized LOG or DEBUG line: user=pgsql,db=apoiorhLOG:  REWRITER
 STATISTICS - log line 62
 Unrecognized LOG or DEBUG line: user=pgsql,db=apoiorhLOG:  PARSER
 STATISTICS - log line 75
 Unrecognized LOG or DEBUG line: user=pgsql,db=apoiorhLOG:  REWRITER
 STATISTICS - log line 99
 Unrecognized LOG or DEBUG line: user=pgsql,db=apoiorhLOG:  PLANNER
 STATISTICS - log line 111
 Unrecognized LOG or DEBUG line: user=pgsql,db=apoiorhLOG:  PARSER
 STATISTICS - log line 123
 PHP Fatal error:  Call to undefined function:  appendcontext() in


 
 /usr/share/pgfouine/include/postgresql/lines/PostgreSQLContextLine.class.php
 
 on line 51
 [EMAIL PROTECTED] log]$ pgfouine.php -debug -file /var/log/pgsql.log 
 log.html
 Using parser: SyslogPostgreSQLParser
 Using accumulator: PostgreSQLAccumulator
 Using listeners: GlobalCountersListener, SlowestQueriesListener,
 NormalizedQueriesListener
 Memory usage: 1.54 mo
 Unrecognized LOG or DEBUG line: user=pgsql,db=apoiorhLOG:  PARSER
 STATISTICS - log line 1
 we just closed a LogBlock, line number should be 1 and is 2 - log line
 
 2
 
 line command number: 1
 we just closed a LogBlock, line number should be 1 and is 3 - log line
 
 3
 
 line command number: 1
 we just closed a LogBlock, line number should be 1 and is 4 - log line
 
 4
 
 line command number: 1
 we just closed a LogBlock, line number should be 1 and is 5 - log line
 
 5
 
 line command number: 1
 we just closed a LogBlock, line number should be 1 and is 6 - log line
 
 6
 
 line command number: 1
 we just closed a LogBlock, line number should be 1 and is 7 - log line
 
 7
 
 line command number: 1
 we just closed a LogBlock, line number should be 1 and is 8 - log line
 
 8
 
 line command number: 1
 we just closed a LogBlock, line number should be 1 and is 9 - log line
 
 9
 
 line command number: 1
 we just closed a LogBlock, line number should be 1 and is 10 - log line
 
 10
 
 line command number: 1
 we just closed a LogBlock, line number should be 1 and is 11 - log line
 
 11
 
 line command number: 1
 we just closed a LogBlock, line number should be 1 and is 12 - log line
 
 12
 
 line command number: 1
 Unrecognized LOG or DEBUG line: user=pgsql,db=apoiorhLOG:  REWRITER
 STATISTICS - log line 25
 we just closed a LogBlock, line number should be 1 and is 3 - log line
 
 27
 
 line command number: 3
 current block command number: 2
 we just closed a LogBlock, line number should be 1 and is 4 - log line
 
 28
 
 line command number: 3
 we just closed a LogBlock, line number should be 1 and is 5 - log line
 
 29
 
 line command number: 3
 we just closed a LogBlock, line number should be 1 and is 6 - log line
 
 30
 
 line command number: 3
 we just closed a LogBlock, line number should be 1 and is 7 - log line
 
 31
 
 line command number: 3
 we just closed a LogBlock, line number should be 1 and is 8 - log line
 
 32
 
 ..


 PHP Fatal error:  Call to undefined function:  appendcontext() in


 
 /usr/share/pgfouine/include/postgresql/lines/PostgreSQLContextLine.class.php
 
 on line 51


 William Leite Araújo escreveu:

 
Olhei no código do arquivo. Ele já a inclui... (ini_set(

   
 'include_path',

 
 '.:/usr/share/pgfouine/')..
Acrescente a opção -debug e veja se algum erro é mostrado...


 Em

Re: [pgbr-geral] OFF - PGFOUINE (ERRO)

2007-10-02 Por tôpico Rubens José Rodrigues
Olá,

Meu Sistema :

PostgreSQL 8.2.4 on i686-pc-linux-gnu, compiled by GCC gcc (GCC) 3.4.3 
20041212
(Red Hat 3.4.3-9.EL4)

Base : 64 GB

Memoria : 6 GB

4 Discos SCSI 15K

Método de Chamada do pgfouine : pgfouine -file /var/log/pgsql.log 
 relatorio.html

Obrigado

Rubens


Bom uso o linux
William Leite Araújo escreveu:
 Em 01/10/07, Rubens J Rodrigues [EMAIL PROTECTED] escreveu:
   
 Pessoal,

 Baixei e instalei o pgfouine.
 Estou tentando rodar o log mas aparece a seguinte mensagem :

 PHP Fatal error:  Call to undefined function:  appendcontext() in

 /usr/share/pgfouine/include/postgresql/lines/PostgreSQLContextLine.class.php
 on line 51
 


 Linux? Windows?
 Provavelmente um caminho errado nos includes (requires) do arquivo.

 E não gera o arquivo de saida.
   
 Alguem pode me indicar uma lista de discussão e ou  me ajudar a resolver
 isto?

 Obrigado,

 att

 Rubens J Rodrigues

 ___
 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
   


-- 
-
Rubens J Rodrigues
Analista de Suporte  TI
Depto. de Informática
Abrevo do Brasil Distribuidora Ltda.
Phone : +55 (27) 2121-8734
Mobile Phone : +55 (27) 9979-0372
Skype-me : rjorodrigues
-



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


Re: [pgbr-geral] OFF - PGFOUINE (ERRO)

2007-10-02 Por tôpico Rubens José Rodrigues
William,

Inclui o path (no meu caso é /etc/php.ini) e nada.
A mesma mensagem de erro

Rubens

William Leite Araújo escreveu:
 Bom, sabe onde fica o arquivo de configuração do cliente php instalado?
 No Debian é /etc/php[5|4]/cli/php.ini
 Procure pela linha include_path e veja se acrescentando à mesma o
 diretório /usr/share/pgfouine/include não resolve...


 Em 02/10/07, Rubens José Rodrigues [EMAIL PROTECTED]
 escreveu:
   
 Olá,

 Meu Sistema :

 PostgreSQL 8.2.4 on i686-pc-linux-gnu, compiled by GCC gcc (GCC) 3.4.3
 20041212
 (Red Hat 3.4.3-9.EL4)

 Base : 64 GB

 Memoria : 6 GB

 4 Discos SCSI 15K

 Método de Chamada do pgfouine : pgfouine -file /var/log/pgsql.log
 
 relatorio.html
   
 Obrigado

 Rubens


 Bom uso o linux
 William Leite Araújo escreveu:
 
 Em 01/10/07, Rubens J Rodrigues [EMAIL PROTECTED]
   
 escreveu:
 
 Pessoal,

 Baixei e instalei o pgfouine.
 Estou tentando rodar o log mas aparece a seguinte mensagem :

 PHP Fatal error:  Call to undefined function:  appendcontext() in


 
 /usr/share/pgfouine/include/postgresql/lines/PostgreSQLContextLine.class.php
 
 on line 51

 
 Linux? Windows?
 Provavelmente um caminho errado nos includes (requires) do
   
 arquivo.
 
 E não gera o arquivo de saida.

   
 Alguem pode me indicar uma lista de discussão e ou  me ajudar a
 
 resolver
 
 isto?

 Obrigado,

 att

 Rubens J Rodrigues

 ___
 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

   
 --
 -

 -



 ___
 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
   


-- 
-

-



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


Re: [pgbr-geral] OFF - PGFOUINE (ERRO)

2007-10-02 Por tôpico Rubens José Rodrigues
Pensei, nisto.
Reli a simples documentacao do pgfouine.
Vi que apenas pede-se para colocar log_line_prefix = 'user=%u,db=%d' o 
resto é default.

Bom . . .

De qualquer forma, tudo bem, eu agradeço a atenção.

Obrigado

William.



William Leite Araújo escreveu:
Fatalmente suas linhas de LOG não estão no formato que o pgfouine aceita.
 Precisa ler a documentação pra configurar o servidor para logar do jeito
 certo...

 Em 02/10/07, Rubens José Rodrigues [EMAIL PROTECTED]
 escreveu:
   
 William,

 Este é um dos erros que aparecem :
 Unrecognized LOG or DEBUG line: user=pgsql,db=apoiorhLOG:  PARSER
 STATISTICS - log line 1
 Unrecognized LOG or DEBUG line: user=pgsql,db=apoiorhLOG:  REWRITER
 STATISTICS - log line 25
 Unrecognized LOG or DEBUG line: user=pgsql,db=apoiorhLOG:  PARSER
 STATISTICS - log line 38
 Unrecognized LOG or DEBUG line: user=pgsql,db=apoiorhLOG:  REWRITER
 STATISTICS - log line 62
 Unrecognized LOG or DEBUG line: user=pgsql,db=apoiorhLOG:  PARSER
 STATISTICS - log line 75
 Unrecognized LOG or DEBUG line: user=pgsql,db=apoiorhLOG:  REWRITER
 STATISTICS - log line 99
 Unrecognized LOG or DEBUG line: user=pgsql,db=apoiorhLOG:  PLANNER
 STATISTICS - log line 111
 Unrecognized LOG or DEBUG line: user=pgsql,db=apoiorhLOG:  PARSER
 STATISTICS - log line 123
 PHP Fatal error:  Call to undefined function:  appendcontext() in

 /usr/share/pgfouine/include/postgresql/lines/PostgreSQLContextLine.class.php
 on line 51
 [EMAIL PROTECTED] log]$ pgfouine.php -debug -file /var/log/pgsql.log 
 log.html
 Using parser: SyslogPostgreSQLParser
 Using accumulator: PostgreSQLAccumulator
 Using listeners: GlobalCountersListener, SlowestQueriesListener,
 NormalizedQueriesListener
 Memory usage: 1.54 mo
 Unrecognized LOG or DEBUG line: user=pgsql,db=apoiorhLOG:  PARSER
 STATISTICS - log line 1
 we just closed a LogBlock, line number should be 1 and is 2 - log line 2
 line command number: 1
 we just closed a LogBlock, line number should be 1 and is 3 - log line 3
 line command number: 1
 we just closed a LogBlock, line number should be 1 and is 4 - log line 4
 line command number: 1
 we just closed a LogBlock, line number should be 1 and is 5 - log line 5
 line command number: 1
 we just closed a LogBlock, line number should be 1 and is 6 - log line 6
 line command number: 1
 we just closed a LogBlock, line number should be 1 and is 7 - log line 7
 line command number: 1
 we just closed a LogBlock, line number should be 1 and is 8 - log line 8
 line command number: 1
 we just closed a LogBlock, line number should be 1 and is 9 - log line 9
 line command number: 1
 we just closed a LogBlock, line number should be 1 and is 10 - log line 10
 line command number: 1
 we just closed a LogBlock, line number should be 1 and is 11 - log line 11
 line command number: 1
 we just closed a LogBlock, line number should be 1 and is 12 - log line 12
 line command number: 1
 Unrecognized LOG or DEBUG line: user=pgsql,db=apoiorhLOG:  REWRITER
 STATISTICS - log line 25
 we just closed a LogBlock, line number should be 1 and is 3 - log line 27
 line command number: 3
 current block command number: 2
 we just closed a LogBlock, line number should be 1 and is 4 - log line 28
 line command number: 3
 we just closed a LogBlock, line number should be 1 and is 5 - log line 29
 line command number: 3
 we just closed a LogBlock, line number should be 1 and is 6 - log line 30
 line command number: 3
 we just closed a LogBlock, line number should be 1 and is 7 - log line 31
 line command number: 3
 we just closed a LogBlock, line number should be 1 and is 8 - log line 32

 ..


 PHP Fatal error:  Call to undefined function:  appendcontext() in

 /usr/share/pgfouine/include/postgresql/lines/PostgreSQLContextLine.class.php
 on line 51


 William Leite Araújo escreveu:
 
Olhei no código do arquivo. Ele já a inclui... (ini_set(
   
 'include_path',
 
 '.:/usr/share/pgfouine/')..
Acrescente a opção -debug e veja se algum erro é mostrado...


 Em 02/10/07, Rubens José Rodrigues [EMAIL PROTECTED]
 escreveu:

   
 William,

 Inclui o path (no meu caso é /etc/php.ini) e nada.
 A mesma mensagem de erro

 Rubens

 William Leite Araújo escreveu:

 
 Bom, sabe onde fica o arquivo de configuração do cliente php

   
 instalado?

 
 No Debian é /etc/php[5|4]/cli/php.ini
 Procure pela linha include_path e veja se acrescentando à mesma
   
 o
 
 diretório /usr/share/pgfouine/include não resolve...


 Em 02/10/07, Rubens José Rodrigues [EMAIL PROTECTED]
 escreveu:


   
 Olá,

 Meu Sistema :

 PostgreSQL 8.2.4 on i686-pc-linux-gnu, compiled by GCC gcc (GCC)
 
 3.4.3
 
 20041212
 (Red Hat 3.4.3-9.EL4)

 Base : 64 GB

 Memoria : 6 GB

 4 Discos SCSI 15K

 Método de Chamada do pgfouine : pgfouine -file /var/log/pgsql.log


 
 relatorio.html


   
 Obrigado

 Rubens


 Bom uso o linux
 William Leite Araújo escreveu:


 
 Em 01/10

[pgbr-geral] Problemas de Mensagens Nesta Lista.

2007-08-16 Por tôpico Rubens José Rodrigues
Pessoal,

Não se estou com problemas ou a lista, porém não tenho recebido 
mensagens da lista e quando as recebo somente as retirada da lista, 
eu quero sair da lista.

Será que temos algum problema?
Ou será que eu é que estou com problemas de receber as mensagens?

Rubens

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


Re: [pgbr-geral] Problemas ao restaurar backup.

2007-08-14 Por tôpico Rubens José Rodrigues
Obrigado André.

Funcionou perfeitamente.

Rubens

André Ricarte escreveu:
 Dump
 pg_dump.exe -i -h localhost -p 5432 -U postgres -F c -b -v -f teste.backup
 BANCO

 Restore
 pg_restore.exe -i -h localhost -p 5432 -U postgres -d BANCO -v 
 teste.backup

 On 8/14/07, Rubens J Rodrigues [EMAIL PROTECTED] wrote:
   
 Pessoal,
 Bom dia!!!

 Estou saindo (tentando) do ambiente de testes para o ambiente de
 produção, onde faço um backup de uma base usando o pg_dump, porém quando
 vou para o ambiente de produção e tento usar o pg_restore me mostra um
 erro.

 Antes de mais nada vamos aos detalhes :

 Servidor de testes :
 PostgreSQL 8.2.4 on i686-pc-linux-gnu,
 compiled by GCC gcc (GCC) 3.4.3 20041212 (Red Hat 3.4.3-9.EL4)
 Maquina mono processada com um unico disco

 Servidor de Produção :
 PostgreSQL 8.2.4 on i686-pc-linux-gnu,
 compiled by GCC gcc (GCC) 3.4.3 20041212 (Red Hat 3.4.3-9.EL4)
 Maquina dual com 4 discos.

 Metodo de backup no ambiente de produçao :
 script :
 #!/bin/bash
 clear
 echo -e 'Iniciando processo de backup . . . '
 DATA=`date +%d%m%Y%H%M%S`
 PASTA=/pg/sistemas/apoiorh/backup/
 ARQUIVO='apoiorh'
 pg_dump -v apoiorh  $PASTA$ARQUIVO$DATA.dmp
 tar -cpzf $PASTA$ARQUIVO$DATA.tar.gz $PASTA$ARQUIVO$DATA.dmp
 rm -f $PASTA$ARQUIVO$DATA.dmp
 clear
 echo -e 'Backup finalizado com sucesso!'


 Metodo para restauração pretendida no ambiente de produção :
 pg_restore -d NOMEBASEDADOS NOARQUIVO.DMP


 Mensagem de erro :
 pg_restore: [archiver] input file does not appear to be a valid archive


 Metodo de transferencia do arquivo de um servidor para outro :
 ambiente de testes - ambiente de producao
 ftp, binary mode transfer.




 Conto com a ajuda de voces para me ajudar neste problema.










 -
 Rubens J Rodrigues
 -



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

 



   


-- 
-
Rubens J Rodrigues
Analista de Suporte  TI
Depto. de Informática
Abrevo do Brasil Distribuidora Ltda.
Phone : +55 (27) 2121-8734
Mobile Phone : +55 (27) 9979-0372
Skype-me : rjorodrigues
-



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


[pgbr-geral] Pegar o primeiro e o ultimo dia de um mes informado.

2007-07-13 Por tôpico Rubens José Rodrigues
Pessoal,

Precisava saber quantos dias e qual o primeiro e ultimo dia de um mes 
informado.
Alguem pode me ajudar?

-- 
-
Rubens J Rodrigues
Skype-me : rjorodrigues
-



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


Re: [pgbr-geral] Pegar o primeiro e o ultimo dia de um mes informado.

2007-07-13 Por tôpico Rubens José Rodrigues
Obrigado Jackson!
Era o que eu precisava. . . .



Jackson escreveu:
 O primeiro sempre sera 1, o ultimo vc pode incrementar o mes e diminir 
 um dia,
 Exemplo


 CREATE OR REPLACE FUNCTION sp_obtem_ultimo_dia(Mes INTEGER, Ano INTEGER)
 RETURNS INTEGER AS $$
 DECLARE
   UltimoDiaMes INTEGER;
 BEGIN
   SELECT  EXTRACT(DAY FROM ((Ano||'/'||(Mes + 1)||'/01'):: DATE - 1))
   INTO UltimoDiaMes;

   RETURN UltimoDiaMes;
 END; $$
 LANGUAGE 'plpgsql';

 Rubens José Rodrigues escreveu:

   
 Pessoal,

 Precisava saber quantos dias e qual o primeiro e ultimo dia de um mes 
 informado.
 Alguem pode me ajudar?

  

 

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



   


-- 
-
Rubens J Rodrigues
Skype-me : rjorodrigues
-



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


Re: [pgbr-geral] Pegar o primeiro e o ultimo dia de um mes informado.

2007-07-13 Por tôpico Rubens José Rodrigues
Olá Sebastian,

Sou fã de carteirinha do manual (quase durmo com ele debaixo do 
travesseiro), porém nele não consegui visualizar (realmente não 
visualizei) uma solução para a seguinte necessidade :

Tenho uma function, que vai gerar uma certa quantidade de registros para 
cada dia de um determinado mes, então minha ideia seria passar o mes de 
referencia como entrada, exemplo :

select * from fnc_teste (mesref varchar);

Neste caso eu pegaria o mes ref, exemplo se for 07/2007.

Eu faria uma pesquisa para saber quantos dias tem o mes 07.
Após retornar a qtde de dias, eu pesquisaria para saber o ultimo dia 
deste mes (se é 30, se é 31, se é 27, se é 28).

Será que consegui faze-lo entender minha necessidade?

Conto com a ajuda de voces,

att.

Rubens



Sebastian SWC escreveu:
 dá uma olhada se isso[1] pode te ajudar... o manual é vosso amigo!!!

 [1] http://pgdocptbr.sourceforge.net/pg80/functions-datetime.html

 -- 
 Atenciosamente,
 Sebastian Selau Webber Colombo
 

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


-- 
-
Rubens J Rodrigues
Skype-me : rjorodrigues
-



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


[pgbr-geral] Erro em Function.

2007-06-14 Por tôpico Rubens José Rodrigues

Colegas,

Segue abaixo uma function que criei compila sem nenhum erro, mas quando 
vou usa-la apresenta a seguinte mensagem de erro :


-- FUNCTION DE LOGIN
CREATE TYPE login_sistema as (loginseq_s integer, usuario_s varchar(20), 
gruposeq_s integer, grupo_s varchar(20));


CREATE OR REPLACE FUNCTION fnc_login ( e_login varchar(20), e_senha 
varchar(32) )

RETURNS
  SETOF
  login_sistema
AS
$body$
DECLARE reg login_sistema%ROWTYPE;
BEGIN
FOR REG IN SELECT usuarios.seq ,
  usuarios.nome,
  grupousuarios.seq,
  grupousuarios.grupo
   FROM   usuarios
   LEFT OUTER JOIN
  uniao_grupo_usuario ON 
uniao_grupo_usuario.codusuario=usuarios.seq

   LEFT OUTER JOIN
  grupousuarios ON 
uniao_grupo_usuario.codgrupo=grupousuarios.seq

   WHERE
  usuarios.login=$1 AND
  usuarios.senha=md5($2)
   ORDER BY grupousuarios.seq,usuarios.seq
 LOOP
  REG.loginseq_s:=usuarios.seq;
  REG.usuario_s:=usuarios.nome;
  REG.gruposeq_s:=grupousuarios.seq;
  REG.grupo_s:=grupousuarios.grupo;
  RETURN NEXT REG;
 END LOOP;
RETURN NEXT REG;
RETURN;
END;
$body$
LANGUAGE 'plpgsql' ;



- MENSAGEM AO USAR O SELECT 
NA FUNCTION


ERROR:  missing FROM-clause entry for table usuarios at character 8
QUERY:  SELECT usuarios.seq
CONTEXT:  PL/pgSQL function fnc_login line 17 at assignment




Alguem poderia me ajudar?


Obrigado


Rubens

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


  1   2   >