Re: [pgbr-geral] Alterar encoding - Backup e Restores

2007-05-29 Por tôpico Tiago José Adami

Até hoje, eu nunca havia testado as diferenças entre Latin1 e UTF8. Até
mesmo na empresa onde trabalho, adotamos o padrão Latin1 para os bancos de
dados do PostgreSQL. O UTF8 nunca foi utilizado porque em alguns fóruns li a
informação de que utilizar UTF8 degrada a performance e aumenta o tamanho
do banco de dados consideravelmente.

Entretanto, tirei um tempo para pôr em prova estas informações que sempre
passaram batido. Fiz um teste com um pequeno banco de dados repleto de
campos VARCHAR e TEXT, criando um dump e restaurando-o em um banco criado
com Latin1 e em outro com UTF8.

Realmente o tamanho em disco do banco UTF 8 ficou maior. Entretanto, foram
apenas alguns Kbytes a mais (26,7 Mb para o Latin1 contra 26,9 Mb para o
UTF8).

Entretanto fiquei em dúvida quanto a esta proporção de tamanho. Ainda não
tirei um tempo para testar com uma base de dados maior - tenho apenas cópias
de bancos de dados do PostgreSQL onde o arquivo de dump está em torno de 4
Gb.

Logo gostaria de saber dos colegas se a utilização do encoding UTF8 traz
algum problema de excesso no tamanho ou na apresentação/manipulação dos
registros, pois nos testes que realizei não tive nenhum problema (usando
UTF8 e a versão 7.10.01 do  PostgreSQL ODBC for Windows). Mesmo assim,
gostaria de uma segunda (terceira, quarta, quinta...) opinião.

Se não existirem pormenores, considero o Latin1 obsoleto.


--
Tiago J. Adami

Dois Vizinhos - PR
Brazil

Use linux, and set your soul free!
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] diferenca na versao 8.1 e 8.2

2007-05-29 Por tôpico Joao
exatamente mas considero isso como bug pq a tendencia e sempre manter 
caracteristicas legadas nao?
  - Original Message - 
  From: Walter Cruz 
  To: Comunidade PostgreSQL Brasileira 
  Sent: Monday, May 28, 2007 6:33 PM
  Subject: Re: [pgbr-geral] diferenca na versao 8.1 e 8.2


  Olha o erro que retornou:

  ERRO:  tipos no IN text e integer não podem corresponder

  Pela mensagem, dá pra inferir que o postgresql 8.2 não faz mais algum casting 
automático que fazia nas versões anteriores.

  []'s
  - Walter


  On 5/28/07, Joao [EMAIL PROTECTED] wrote:
Caros seguindo a seguinte query abaixo:

select * from (
(select '1' as grupo)
UNION
(select '2' as grupo)
UNION
(select '3' as grupo)) as temp where grupo in (1,2,3)

na 8.1 roda e na 8.2 nao roda.
Nao estou perguntando como faria para rodar na 8.2, simples so um cast, ou 
entao retonar o '1' como 1. Gostaria de saber o porque!


___
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] Campo Calculado

2007-05-29 Por tôpico Leonardo Chaves

Melhor não ignorar os conselhos anteriores mas se quiser insistir nisso ai .
use essa trigger.

CREATE OR REPLACE FUNCTION trigger_insert_tabela() RETURNS TRIGGER AS
$$
BEGIN
NEW.campo6 = NEW.campo1 + NEW.campo2 + NEW.campo3 + NEW.campo4 + NEW.campo5;
RETURN NEW;
END;
$$ LANGUAGE PLPGSQL VOLATILE;

CREATE TRIGGER trg_update_tabela BEFORE INSERT ON tabela
FOR EACH ROW EXECUTE PROCEDURE trigger_update_tabela();

Em 28/05/07, Leandro Guimarães Faria Corcete DUTRA 
[EMAIL PROTECTED] escreveu:


Em Seg, 2007-05-28 às 12:36 -0700, Osvaldo Kussama escreveu:

 Luciano - Uol wrote:
 
  Tenho um tabela com 5 campos numeric(15,2) o qual eu digito alguns
  valores, após a inserção eu queria colocar no 6 campo o valor da soma
  desses 5 campos automaticamente, como fazer?

Primeiro, escrever melhor para a gente entender.  6 campo?  Deve
ser
6º.


 Ter um campo em uma tabela que é derivado de outros é um grave erro de
 projeto de seu banco de dados.
 Estude um pouco sobre normalização, particularmente dependência
funcional, e
 refaça seu projeto de bd. Certamente você terá menos dores de cabeça no
 futuro.

Segundo, ouvir o conselho do Osvaldo.

Terceiro, UPDATE tabela SET sexto = primeiro + segundo + terceiro
+
quarto + quinto;

--
+55 (11) 2122 0302   http://br.geocities.com./lgcdutra/
+55 (11) 5685 2219  gTalk: xmpp:[EMAIL PROTECTED]
+55 (11) 9406 7191Yahoo!: ymsgr:sendIM?lgcdutra
+55 (11) 5686 9607ICQ/AIM: aim:GoIM?screenname=61287803
  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





--
Att,
Leonardo Chaves de Freitas

QualyConsult
Analista de Bando de Dados  - DBA
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] diferenca na versao 8.1 e 8.2

2007-05-29 Por tôpico Walter Cruz

Sim, de fato é o mesmo :)

Casting automáticos sumindo .. Mas isso está de acordo com o padrão SQL :)

[]'s
- Walter

On 5/28/07, Osvaldo Kussama [EMAIL PROTECTED] wrote:





joao cosme de oliveira junior wrote:

 Caros seguindo a seguinte query abaixo:

 select * from (
 (select '1' as grupo)
 UNION
 (select '2' as grupo)
 UNION
 (select '3' as grupo)) as temp where grupo in (1,2,3)

 na 8.1 roda e na 8.2 nao roda.
 Nao estou perguntando como faria para rodar na 8.2, simples so um cast,
ou
 entao retonar o '1' como 1. Gostaria de saber o porque!



Me parece ser o mesmo problema tratado nesta thread:
http://www.nabble.com/Potential-bug-in-postgres-8.2.4-tf3809487.html
Veja a resposta do Tom Lane.

[]s
Osvaldo

--
View this message in context:
http://www.nabble.com/diferenca-na-versao-8.1-e-8.2-tf3829045.html#a10843856
Sent from the PostgreSQL - Brasil mailing list archive at Nabble.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


Re: [pgbr-geral] otimização de query

2007-05-29 Por tôpico Daniel Loureiro
distinct + group by ?! Note que você está agrupando alguns campos 2 
vezes. Procure só usar o group by (ou só o distinct).


De resto, o pessoal já falou: dê um explain e crie índices com base na 
resposta do explain; use JOINs para ficar mais legível e deixar 
explícito como o postgresql deve relacionar as tabelas (senão ele vai 
tentar usar o geqo); etc.


Sds,
Daniel Loureiro.

João Paulo escreveu:

Olá pessoal,

Tenho a seguinte query que funciona perfeitamente, porém acho que ela 
está demorando mais para executar. Passei pelo analyze e onde a query 
demora mais é quando são feitos os dois in's quase no final da query, 
alguem sabe me dizer se tenho como otimizar esta query para ela ficar 
mas rápida.


select distinct 
tabela1.campo1,t1.campo5,t1.campo6,tabela3.campo3,tabela6.campo2,count(*)
from tabela1,tabela2,tabela3,tabela4 t1,tabela4 
t2,tabela5,tabela6,tabela7 t3,tabela7 t4

where tabela1.campo2=tabela2.campo2
and tabela1.campo3=tabela2.campo3
and tabela2.campo4='U'
and tabela1.datal between '2006-06-01' and '2006-06-30'
and tabela2.campo5=tabela3.campo3
and tabela3.campo4='A'
and tabela1.campo5=t1.campo6
and t1.campo7='A'
and t1.campo6=t2.campo5
and tabela1.campo8=tabela5.campo2
and tabela5.campo3=tabela6.campo2
and tabela1.campo1=t3.campo1
and t3.campo2=t4.campo3
and t3.campo2 in (1,2,3,4,5,6,7,8,9,10,11,12,13,14)
and t4.campo3 in (1000,1001,1002,1003,1004,1005)
group by tabela1.campo1,t1.campo5,t1.campo6,tabela3.campo3,tabela6.campo2;

João Paulo.

--
E-mail Seguro Vetorial.net

Mensagem classificada como NÃO-SPAM. Para classificar como SPAM,
encaminhe para [EMAIL PROTECTED]

Chave de Identificação: 26110,465b03d5786841300320092




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


--
E-mail Seguro Vetorial.net

Mensagem classificada como NÃO-SPAM. Para classificar como SPAM,
encaminhe para [EMAIL PROTECTED]

Chave de Identificação: 26110,465b03d5786841300320092
begin:vcard
fn:Daniel Loureiro
n:Loureiro;Daniel
org:Terminal Maritimo Luiz Fogliatto S/A;Setor de TI
email;internet:[EMAIL PROTECTED]
tel;work:(53) 32341500 Ramal 166
version:2.1
end:vcard

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


Re: [pgbr-geral] Alterar encoding - Backup e Restores

2007-05-29 Por tôpico Luiz Rafael Culik Guimaraes

Tiago

Pelo que sei, o proprio window e burro demais par utf8, pelo que sei ate 
hoje o delphi nao suporta ele.


Alem do mais, na ninha opiniao, nao tem necessidade de usar banco em unicode 
no brasil


[]s
Luiz 


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


Re: [pgbr-geral] Campo Calculado

2007-05-29 Por tôpico Liliana Matos

já respondido em:

http://listas.postgresql.org.br/pipermail/pgbr-geral/2007-May/000817.html

On 5/29/07, Leonardo Chaves [EMAIL PROTECTED] wrote:


Melhor não ignorar os conselhos anteriores mas se quiser insistir nisso ai
. use essa trigger.

CREATE OR REPLACE FUNCTION trigger_insert_tabela() RETURNS TRIGGER AS
$$
BEGIN
NEW.campo6 = NEW.campo1 + NEW.campo2 + NEW.campo3 + NEW.campo4 +
NEW.campo5;
RETURN NEW;
END;
$$ LANGUAGE PLPGSQL VOLATILE;

CREATE TRIGGER trg_update_tabela BEFORE INSERT ON tabela
FOR EACH ROW EXECUTE PROCEDURE trigger_update_tabela();

Em 28/05/07, Leandro Guimarães Faria Corcete DUTRA 
[EMAIL PROTECTED] escreveu:

 Em Seg, 2007-05-28 às 12:36 -0700, Osvaldo Kussama escreveu:
 
  Luciano - Uol wrote:
  
   Tenho um tabela com 5 campos numeric(15,2) o qual eu digito alguns
   valores, após a inserção eu queria colocar no 6 campo o valor da
 soma
   desses 5 campos automaticamente, como fazer?

 Primeiro, escrever melhor para a gente entender.  6 campo?  Deve
 ser
 6º.


  Ter um campo em uma tabela que é derivado de outros é um grave erro de

  projeto de seu banco de dados.
  Estude um pouco sobre normalização, particularmente dependência
 funcional, e
  refaça seu projeto de bd. Certamente você terá menos dores de cabeça
 no
  futuro.

 Segundo, ouvir o conselho do Osvaldo.

 Terceiro, UPDATE tabela SET sexto = primeiro + segundo +
 terceiro +
 quarto + quinto;

 --
 +55 (11) 2122 0302   http://br.geocities.com./lgcdutra/
 +55 (11) 5685 2219  gTalk: xmpp:[EMAIL PROTECTED]
 +55 (11) 9406 7191Yahoo!: ymsgr:sendIM?lgcdutra
 +55 (11) 5686 9607ICQ/AIM: aim:GoIM?screenname=61287803
   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




--
Att,
Leonardo Chaves de Freitas

QualyConsult
Analista de Bando de Dados  - DBA
___
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] Erro na instalação

2007-05-29 Por tôpico Oda

Helton
Para instalar no Windows, o sistema de arquivos precisa ser NTFS.
http://pginstaller.projects.postgresql.org/
http://pgfoundry.org/pipermail/brasil-usuarios/2005-December/000698.html
Sua partição é NTFS?

--
Oda
WebDesigner
[EMAIL PROTECTED]
MSN: [EMAIL PROTECTED]
http://www.unochapeco.edu.br
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] REF. PORTA 5432.

2007-05-29 Por tôpico Paulo
Obrigado Tiago pelas informações, vou fazer uns testes de ataque para ver como 
se comporta.
Os modelos de modens mais novos ja vem com a opcao de liberar portas e firewall 
ativados para elas,
mas de qualquer forma vou fazer uns testes massantes para ver o comportamento.
Nao sei se o que vc esta informando; sao sobre estes novos modelos de modens ou 
nao importa os modelos,
a vulnerabilidade são as mesmas ??


  - Original Message - 
  From: Tiago José Adami 
  To: Comunidade PostgreSQL Brasileira 
  Sent: Tuesday, May 29, 2007 8:56 AM
  Subject: Re: [pgbr-geral] REF. PORTA 5432.


  A partir do momento que existe uma porta TCP liberada e/ou redirecionada em 
um roteador, relativamente não existe segurança.

  Eu acredito que o firewall do modem não vá conseguir identificar se os 
pacotes que estão chegando são de um client do PostgreSQL ou um ataque externo. 
Neste caso, as chances de invasão são muito grandes. 

  -- 
  Tiago J. Adami

  Dois Vizinhos - PR
  Brazil

  Use linux, and set your soul free! 


--
  E-mail classificado pelo Identificador de Spam Inteligente.
  Para alterar a categoria classificada, visite o Terra Mail 



--
  Esta mensagem foi verificada pelo E-mail Protegido Terra.
  Scan engine: McAfee VirusScan / Atualizado em 28/05/2007 / Versão: 5.1.00/5040
  Proteja o seu e-mail Terra: http://mail.terra.com.br/ 



--


  ___
  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] diferenca na versao 8.1 e 8.2

2007-05-29 Por tôpico Osvaldo Kussama



joao cosme de oliveira junior wrote:
 
 Agora fique curioso , osvaldo como você chegou nesses foruns??
 
 - Original Message - 
 From: Osvaldo Kussama [EMAIL PROTECTED]
 To: pgbr-geral@listas.postgresql.org.br
 Sent: Monday, May 28, 2007 5:17 PM
 Subject: Re: [pgbr-geral] diferenca na versao 8.1 e 8.2
 
 



 joao cosme de oliveira junior wrote:

 Caros seguindo a seguinte query abaixo:

 select * from (
 (select '1' as grupo)
 UNION
 (select '2' as grupo)
 UNION
 (select '3' as grupo)) as temp where grupo in (1,2,3)

 na 8.1 roda e na 8.2 nao roda.
 Nao estou perguntando como faria para rodar na 8.2, simples so um cast, 
 ou
 entao retonar o '1' como 1. Gostaria de saber o porque!



 Me parece ser o mesmo problema tratado nesta thread:
 http://www.nabble.com/Potential-bug-in-postgres-8.2.4-tf3809487.html
 Veja a resposta do Tom Lane.

 



-- 
View this message in context: 
http://www.nabble.com/diferenca-na-versao-8.1-e-8.2-tf3829045.html#a10859441
Sent from the PostgreSQL - Brasil mailing list archive at Nabble.com.

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


Re: [pgbr-geral] diferenca na versao 8.1 e 8.2

2007-05-29 Por tôpico Osvaldo Kussama



Osvaldo Kussama wrote:
 
 
 
 joao cosme de oliveira junior wrote:
 
 Agora fique curioso , osvaldo como você chegou nesses foruns??
 
 - Original Message - 
 From: Osvaldo Kussama [EMAIL PROTECTED]
 To: pgbr-geral@listas.postgresql.org.br
 Sent: Monday, May 28, 2007 5:17 PM
 Subject: Re: [pgbr-geral] diferenca na versao 8.1 e 8.2
 
 



 joao cosme de oliveira junior wrote:

 Caros seguindo a seguinte query abaixo:

 select * from (
 (select '1' as grupo)
 UNION
 (select '2' as grupo)
 UNION
 (select '3' as grupo)) as temp where grupo in (1,2,3)

 na 8.1 roda e na 8.2 nao roda.
 Nao estou perguntando como faria para rodar na 8.2, simples so um cast, 
 ou
 entao retonar o '1' como 1. Gostaria de saber o porque!



 Me parece ser o mesmo problema tratado nesta thread:
 http://www.nabble.com/Potential-bug-in-postgres-8.2.4-tf3809487.html
 Veja a resposta do Tom Lane.

 
 
 

Veja:
http://www.postgresql.org/community/lists/

É possível, também, acompanhá-las através do:
http://www.nabble.com/PostgreSQL-f759.html
que é através de onde estou respondendo sua mensagem dada a demora para as
mensagens do grupo pgbr-geral chegarem à minha caixa postal.

[]s
Osvaldo

-- 
View this message in context: 
http://www.nabble.com/diferenca-na-versao-8.1-e-8.2-tf3829045.html#a10859588
Sent from the PostgreSQL - Brasil mailing list archive at Nabble.com.

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


[pgbr-geral] Componente de Acesso Delphi --- PostgreSQL

2007-05-29 Por tôpico Rubens José Rodrigues

Pessoal,

Quais opções existentes e confiaveis para acesso ao banco via delphi?

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


Re: [pgbr-geral] diferenca na versao 8.1 e 8.2

2007-05-29 Por tôpico Walter Cruz

Depende :)
No caso, o casting automático não estava em conformidade com o padrão SQL e
já estava na lista de remoção há algum tempo, como demonstrado na resposta
do Tom Lane.

[]'s
- Walter

On 5/29/07, Joao [EMAIL PROTECTED] wrote:


 exatamente mas considero isso como bug pq a tendencia e sempre manter
caracteristicas legadas nao?

- Original Message -
*From:* Walter Cruz [EMAIL PROTECTED]
*To:* Comunidade PostgreSQL Brasileirapgbr-geral@listas.postgresql.org.br
*Sent:* Monday, May 28, 2007 6:33 PM
*Subject:* Re: [pgbr-geral] diferenca na versao 8.1 e 8.2

Olha o erro que retornou:

ERRO:  tipos no IN text e integer não podem corresponder

Pela mensagem, dá pra inferir que o postgresql 8.2 não faz mais algum
casting automático que fazia nas versões anteriores.

[]'s
- Walter

On 5/28/07, Joao [EMAIL PROTECTED] wrote:

  Caros seguindo a seguinte query abaixo:

 select * from (
 (select '1' as grupo)
 UNION
 (select '2' as grupo)
 UNION
 (select '3' as grupo)) as temp where grupo in (1,2,3)

 na 8.1 roda e na 8.2 nao roda.
 Nao estou perguntando como faria para rodar na 8.2, simples so um cast,
 ou entao retonar o '1' como 1. Gostaria de saber o porque!


 ___
 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] script de auditoria no banco de dados

2007-05-29 Por tôpico Joao

explique exatemente o q vc quer!
vc quer dado uma tabela obter seus campos e tipos?
- Original Message - 
From: Rildo Santos Santos [EMAIL PROTECTED]

To: pgbr-geral@listas.postgresql.org.br
Sent: Tuesday, May 29, 2007 2:52 PM
Subject: [pgbr-geral] script de auditoria no banco de dados



Boa tarde a todos

Estou fazer um script de auditoria, mais o que acontece é que tenho tabela 
com mais de 200 campos, então está ficando muito braçal, sem contar o 
risco que estou correndo de deixar algum campo de fora da comparação, como 
mostra o script abaixo.


Caso alguém tem uma idéia ou mesmo um script onde esta comparação e feita 
dentro de um loop ou algo que não seja tanto braçal, e se o mesmo puder 
min enviar um modelo ou mim da uma orientação como fazer isso, ficarei 
muito agradecido


Desde já obrigado!

Rildo..


-- deleta o trigger e as funções
DROP TRIGGER  Tg_Mfi_InsUpd_Ant_Tbl_SysEstPr_Tabela_Estado on SysEstPr;
DROP TRIGGER  Tg_Mfi_Delete_Dep_Tbl_SysEstPr_Tabela_Estado on SysEstPr;
DROP FUNCTION Fc_Mfi_Atv_Via_Tbl_SysEstPr_Tabela_Estado();

 -- cria a função ativada via a tabela de estado 
Fc_Mfi_Atv_Via_Tbl_SysEstPr_Tabela_Estado()
CREATE FUNCTION Fc_Mfi_Atv_Via_Tbl_SysEstPr_Tabela_Estado() RETURNS 
trigger AS $Fc_Mfi_Atv_Via_Tbl_SysEstPr_Tabela_Estado$

DECLARE -- declaração das variaveis

  --Tipo de operação---
  vlStrTpoOpr   VARCHAR;

  ---Auditoria-
  vlIntRgsInc  INTEGER;
  vlIntRgsFnl  INTEGER;
  vlStrNmeTbl  VARCHAR;
  vlStrNmeCmp  VARCHAR;
  vlStrTpoCmp  VARCHAR;
  vlStrCntTxt  TEXT;

BEGIN
  IF tg_op  'DELETE' THEN
 vlStrTpoOpr := 'I';
 IF tg_op = 'UPDATE' THEN
vlStrTpoOpr := 'U';
 END IF;



 Inicio da auditoria--
 vlStrNmeTbl   := 'SysEstPr';

 vlIntRgsInc   := 1 ;
 vlIntRgsFnl   := (SELECT MAX(Ordinal_Position) FROM 
information_schema.columns where table_name = vlStrNmeTbl);

 IF vlIntRgsFnl IS  NULL   THEN
 vlIntRgsFnl   := 0;
 END IF;

 ---WHILE vlIntRgsInc = vlIntRgsFnl LOOP
  --vlStrNmeCmp :=  (SELECT Column_name FROM 
information_schema.columns where table_name = vlStrNmeTbl And 
Ordinal_Position = vlIntRgsInc);
  --vlStrTpoCmp :=  (SELECT data_type   FROM 
information_schema.columns where table_name = vlStrNmeTbl And 
Ordinal_Position = vlIntRgsInc);
  --vlStrCntCmp :=  'SELECT '  || vlStrNmeCmp || ' FROM ' || 
vlStrNmeTbl || ' Where ' || vlStrCmpChv || ' = ' || vlStrEstChv ;


  --IF vlStrCntTxt

  --RAISE Notice  ' (%), (%), (%), (%), (%), (%)', vlIntRgsInc, 
vlIntRgsFnl, vlStrNmeTbl, vlStrNmeCmp, vlStrTpoCmp, vlStrCntCmp;


--vlIntRgsInc := vlIntRgsInc + 1;
 --END LOOP;

 vlStrCntTxt := '' ;



 IF vlStrTpoOpr  = 'U' THEN


IF New.NmeEst   Old.NmeEst THEN
   vlStrCntTxt   := 'NmeEst ' || NmeEst.Old;
END IF;

IF New.RgoEst   Old.RgoEst THEN
vlStrCntTxt  := vlStrCntTxt || 'RgoEst ' || 
Old.RgoEst;

END IF;

IF New.FlgEst   Old.FlgEst THEN
vlStrCntTxt  := vlStrCntTxt || 'FlgEst ' || 
Old.FlgEst;


END IF;

IF New.ObsEst Old.ObsEst THEN
vlStrCntTxt  := vlStrCntTxt || 'ObsEst ' || 
Old.ObsEst;

END IF;

 END IF;

 IF vlStrTpoOpr = 'I' THEN
 INSERT INTO TblLogSs SELECT Current_DataBase(), Current_Schema(), 
vlStrNmeTbl, Session_User, Inet_Client_Addr(), Session_User, 
New.UsrUltAltEst, now(), New.DtahorUltAltEst, vlStrTpoOpr, '', 
vlStrCntTxt;

 ELSIF vlStrTpoOpr = 'U' THEN
 INSERT INTO TblLogSs SELECT Current_DataBase(), Current_Schema(), 
vlStrNmeTbl, Session_User, Inet_Client_Addr(), Session_User, 
New.UsrUltAltEst, now(), New.DtahorUltAltEst, vlStrTpoOpr, '', 
vlStrCntTxt;

 END IF;

 Fimal  da auditoria--
 RETURN NEW;
  END IF;
  IF tg_op = 'DELETE' THEN

 IF (TG_OP = 'DELETE') THEN

 RETURN OLD;
 END IF;

 RETURN OLD;
  END IF;
END;
$Fc_Mfi_Atv_Via_Tbl_SysEstPr_Tabela_Estado$ LANGUAGE plpgsql;

 -- cria o gatilho Tg_Mfi_InsUpd_Ant_Tbl_SysEstPr_Tabela_Estado
CREATE TRIGGER Tg_Mfi_InsUpd_Ant_Tbl_SysEstPr_Tabela_Estado BEFORE INSERT 
OR UPDATE ON SysEstPr
   FOR EACH ROW EXECUTE PROCEDURE 
Fc_Mfi_Atv_Via_Tbl_SysEstPr_Tabela_Estado();


 -- cria o gatilho Tg_Mfi_Delete_Dep_Tbl_SysEstPr_Tabela_Estado
CREATE TRIGGER Tg_Mfi_Delete_Dep_Tbl_SysEstPr_Tabela_Estado AFTER DELETE 
ON SysEstPr
   FOR EACH ROW EXECUTE PROCEDURE 
Fc_Mfi_Atv_Via_Tbl_SysEstPr_Tabela_Estado();


_
MSN Busca: fácil, rápido, direto ao ponto.  http://search.msn.com.br

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

Re: [pgbr-geral] Acesso remoto ADSL matriz-filial

2007-05-29 Por tôpico Edinho - Analista
Eu uso no-ip e brasiltelecom e consegui configurar o moldem e funcionou legal!

--
Edinho

Marcos Fabrício Corso [EMAIL PROTECTED] escreveu:   eu tentei usar o 
no-ip com o postgres via porta 5432 com o  d-link 
  
 mas nao consegui acessar porque a brasiltelecom (por  sinal, uma empresa sem 
vergonha) nao me deu acesso a essa porta, tentei de  varias maneiras de 
configurar o modem, sem sucesso ...
 ate hoje estou esperando uma resposta deles, fazem umas 3  semanas, quando 
liguei eles falaram que nao dava pra fazer esse acesso, que eu  teria que 
comprar um ip fixo , mas sei que outras operadoras fazem isso, mas  naquela 
m... de brasiltelecom nao, porque bastava so eu mudar de plano que iria  
funcionar, mas eles falaram que nao funcionava, pra eu comprar um ip, porque  
eles iriam ganhar mais, bando de sem vergonhas 
  
  
  
- Original Message - 
   From:SebastianSWC 
   To: Comunidade PostgreSQLBrasileira 
   Sent: Tuesday, May 15, 2007 8:57 AM
   Subject: Re: [pgbr-geral] Acesso remotoADSL matriz-filial
   

sim, concordo. Mas se tu não criar um bom contrato, pq senão,na primeira 
invasão, o cliente irá te culpar eternamente!hehehe



   On 5/12/07, Erlon[EMAIL PROTECTED]wrote: uso o no-ip 
free, pra liberar a porta,, há  tutoriais que vc pega no google, bem 
certinho pra cada modem... o início é..  no explorer vc digita //10.1.1.1 e 
aí aparece pra vc digitar a  senha,,
 tente admin   admin...
 apesar do banco de dados ficar vulnerável,  aberto pra internet,, há 
clientes que não querem ter custo e querem correr o  risco,, faz parte.. 
todo mundo sabe que há muitos clientes  assim
 -Original Message - 
   From:Paulo 
   To:ComunidadePostgreSQL Brasileira 
   Sent:Friday, May 11, 2007 9:23 AM 
   Subject:Re: [pgbr-geral] Acesso remoto ADSL matriz-filial
   

   Ola Erlon,

   Eu estou tentando configurar o no-ip paraacesso remoto e talvez 
por esse motivo ainda nao consegui.
   onde vc configurou no modem a porta 5432 ??meu modem é D-Link.
   Você usa o no-ip free (como eu) ou o pago???

   Obrigado.

   Paulo.

-  Original Message - 
 From:  Erlon 
 To:  pgbr-geral@listas.postgresql.org.br 
 Sent:  Thursday, May 10, 2007 10:03 PM
 Subject:  [pgbr-geral] Acesso remoto ADSL matriz-filial
 

 A um tempo atras, fui desenganado na lista  e fora dela sobre 
uma empresa ter uma filial e acessar a base de dados  da matriz pela 
internet, sem ter ip fixo.. pois eu fiz, e foi  extremamente mais 
simples que eu imaginei... matriz e filial possuem  windows XP 
instalados.
 o banco de dados está na matriz,, instalei  o no-ip no 
servidor na matriz..
 acessei a configuração do modem adsl,,  liberei a porta 
5432,,, e a filial acessa o banco de dados normalmente  sem nada de 
especial só colocando o endereço do no-ip no lugar o ip.  
 simples  e fácil assim.
 só gostaria de contribuir com essa  conquista...
 o que me explicaram aki, tinha mil e uma  dificuldades, passos 
e nada funcionou, um amigo aki me explicou e  consegui fazer, simples 
assim,,,
 um abraço a todos.
 erlon
 
 
-
 E-mail classificado pelo  Identificador de Spam Inteligente.
Para alterar a categoria  classificada, visite o Terra Mail  
 
 
-
 Esta mensagem foi verificada  pelo E-mail Protegido  
Terra.
Scan engine: McAfee VirusScan / Atualizado em 10/05/2007 /  Versão: 
5.1.00/5028
Proteja o seu e-mail Terra: http://mail.terra.com.br/  
 
 
-
  
___
pgbr-geral  mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
 
 
 
   
   
-

___
pgbr-geralmailing 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  





--
Atenciosamente,
Sebastian Selau Webber Colombo

Sl 67.1-2: ÓDeus, tem misericórdia de nós e abençoa-nos! Trata-nos com 
bondade. Assim omundo inteiro conhecerá a tua vontade, e a tua salvação 
será 

Re: [pgbr-geral] Locks de transações

2007-05-29 Por tôpico Euler Taveira de Oliveira
Sebastian SWC wrote:

 como posso fazer para descobrir quais são os locks que estão sendo
 executados na minha base de dados?
 

regression=# select * from pg_locks;
   locktype| database | relation | page | tuple | transactionid |
classid | objid | objsubid | transaction | pid  |mode |
granted
---+--+--+--+---+---+-+---+--+-+--+-+-
 relation  |28710 |28711 |  |   |   |
  |   |  |   14699 | 3390 | AccessExclusiveLock | t
 transactionid |  |  |  |   | 14699 |
  |   |  |   14699 | 3390 | ExclusiveLock   | t
 transactionid |  |  |  |   | 14700 |
  |   |  |   14700 | 3400 | ExclusiveLock   | t
 relation  |1 |10328 |  |   |   |
  |   |  |   14700 | 3400 | AccessShareLock | t
(4 registros)

Dê uma olhada em
http://www.postgresql.org/docs/8.2/static/view-pg-locks.html

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