Re: [pgbr-geral] usando pg_ident
Sera que alguem na lista saberia responder essas duvidas? 2009/4/15 jorge sanfelice > Ola pessoal, > > Estava querendo usar o pg_ident para autenticacao de usuarios locais do > server que acessam o banco. > > Aguem tem alguma opiniao sobre isso, se é legal ou nao? > > Eu dei uma pesquisada e vi que tenho que ativar uma daemon "identd", como > faço isso? Preciso instalar algum pacote em meu server? > > Estou usando as versoes 8.2 (em um server) e 8.3 (em outro) ambos em Linux > mandriva. > > Obrigado. > ___ 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.
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 : > > 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
Re: [pgbr-geral] RES:RES: Duvidas quanto funcionamento anormal (ou sou eu) de function.
2009/4/16 Rubens José Rodrigues : > > 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 ___ 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.
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 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 Reg
Re: [pgbr-geral] Duvidas quanto funcionamento anormal (ou sou eu) de function.
2009/4/16 Rubens José Rodrigues : > > 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 ___ 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.
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: tamanho do schema
Resolvido Agradeço a todos . De: Rafael Domiciano Para: Comunidade PostgreSQL Brasileira Enviadas: Quarta-feira, 15 de Abril de 2009 18:00:34 Assunto: Re: [pgbr-geral] tamanho do schema Boa Noite Paulo, Você pode utilizar o seguinte sql para verificar o tamanho da base: select pg_size_pretty( pg_database_size ('postgres')) Como eu desconhece qualquer função que pegue o tamanho do schema, eu faria assim: CREATE REPLACE FUNCTION fnc_tamanho_schema (char) RETURNS varchar AS $BODY$ DECLARE v_tabelavarchar; v_tamanhobigint; BEGIN -- Passar o nome do schema no parâmetro da função v_tamanho := 0; FOR v_tabela IN select a.relname from pg_class a, pg_namespace b where b.nspname = $1 and b.oid = a.relnamespace and a.relkind = 'r' -- Apenas Tabelas Físicas (sem indexes, Toast, sequences, views) order by relname LOOP v_tamanho := v_tamanho + (pg_relation_size (v_tabela)); END LOOP; RETURN (select pg_size_pretty(v_tamanho)); END; $BODY$ LANGUAGE 'plpgsql'; select fnc_tamanho_schema ('public') Espero ter ajudados. Rafael Domiciano DBA Postgres 2009/4/15 paulo matadr Alguem tem sabe como eu faço pra calcular o tamanho de um schema( somatorio de todos os objetos pertencentes a ele). Att Paulo Moraes Veja quais são os assuntos do momento no Yahoo! + Buscados: Top 10 - Celebridades - Música - Esportes ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral Veja quais são os assuntos do momento no Yahoo! +Buscados http://br.maisbuscados.yahoo.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: RES: Não recupera r dados
Cuidado Alisson. :) -Mensagem original- De: pgbr-geral-boun...@listas.postgresql.org.br [mailto:pgbr-geral-boun...@listas.postgresql.org.br] Em nome de Alisson Viegas Enviada em: quarta-feira, 15 de abril de 2009 18:13 Para: 'Comunidade PostgreSQL Brasileira' Assunto: [pgbr-geral] RES: RES: Não recuperar dados Heheh... Mas, infelizmente, é a realidade! At.te, Alisson Viegas Acsiv Sistemas -Mensagem original- De: pgbr-geral-boun...@listas.postgresql.org.br [mailto:pgbr-geral-boun...@listas.postgresql.org.br] Em nome de Osvaldo Kussama Enviada em: terça-feira, 14 de abril de 2009 19:52 Para: Comunidade PostgreSQL Brasileira Assunto: Re: [pgbr-geral] RES: Não recuperar dados 2009/4/14 Alisson Viegas : > Já desisti dessa solução! > Mas o objetivo é proteger dados de caixa 2 contra fiscalizações. > O pessoal da Secretaria da Receita Federal que faz parte desta lista deve ter adorado esta mensagem Osvaldo ___ 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] RES: Replicar alterações no BD
Use o Database Comparer for PostgreSQL, da EMS. Jean Domingues -Mensagem original- De: Carlos Humberto [mailto:chcosta.pess...@gmail.com] Enviada em: quarta-feira, 15 de abril de 2009 11:27 Para: pgbr-geral@listas.postgresql.org.br Assunto: [pgbr-geral] Replicar alterações no BD Bom Dia Pessoal, Primeiramente, minha dúvida NÃO é sobre replicar os DADOS do BD e sim as alterações na ESTRUTURA do BD. Vou explicar melhor meu problema... Eu trabalho com dois ambientes o de desenvolvimento (servidor interno) e o ambiente da aplicação rodando (servidor web). Quando o sistema está OK é feito o upload do BD do ambiente interno para a web. Porém, com o andar da carruagem as vezes são feitas algumas alterações na estrutura do BD. Por exemplo, o sistema vai requerendo novas exigências e novos campos são adicionados a uma tabela. Então eu preciso replicar essas alterações para o servidor web. Mas as vezes não lembro as alterações que foram feitas no ambiente local, para replicar para o web, e acabo tendo que ficar comparando as duas tabelas (local e web). Como já tem dados na tabela da web, não tem como eu recriar a tabela da web senão eu perderia os dados. Existe uma solução para esse problema ? Abração a todos ! ___ Yahoo! Mail - Sempre a melhor opção para você! Experimente já e veja as novidades. http://br.yahoo.com/mailbeta/tudonovo/ ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral