---------- Cabeçalho original ----------- De: [EMAIL PROTECTED] Para: pgbr-geral@listas.postgresql.org.br Cópia: Data: Tue, 31 Jul 2007 18:37:24 +0000 Assunto: Digest pgbr-geral, volume 5, assunto 216
> Send pgbr-geral mailing list submissions to > pgbr-geral@listas.postgresql.org.br > > To subscribe or unsubscribe via the World Wide Web, visit > https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral > or, via email, send a message with subject or body 'help' to > [EMAIL PROTECTED] > > You can reach the person managing the list at > [EMAIL PROTECTED] > > When replying, please edit your Subject line so it is more specific > than "Re: Contents of pgbr-geral digest..." > > > Tópicos de Hoje: > > 1. Re: pg_start_backup (Thiago Boufleuhr) > 2. Re: Erro estranho com varios joins! (Joao) > 3. Dúvida sobre sequence (Marcus Fernandez) > 4. Re: Dúvida sobre sequence (Roberto Mello) > 5. Re: Dúvida sobre sequence (Evandro Ricardo Silvestre) > 6. Re: Certificação PostgreSQL (Daniel Gaspary) > 7. Re: Dúvida sobre sequence ( Pablo Sánchez ) > 8. Re: Dúvida sobre sequence (Marcus Fernandez) > > > ---------------------------------------------------------------------- > Boa tarde Joao, eu estava lendo o seu arquivo sobre o pg_start_backup e achei muito interessante, era o que eu estava pesquisando ha alguns dias.. So uma pergunta.. quando vc sobe o banco, o arquivo recovery.conf e renomeado para recovery.done, entao, toda vez que eu subir o banco terei que renomear para recovery.conf? Obrigado, Junior HELP SYSTEM TECNOLOGIA LTDA. [EMAIL PROTECTED] > Message: 1 > Date: Tue, 31 Jul 2007 11:15:13 -0300 > From: Thiago Boufleuhr <[EMAIL PROTECTED]> > Subject: Re: [pgbr-geral] pg_start_backup > To: Comunidade PostgreSQL Brasileira > <pgbr-geral@listas.postgresql.org.br> > Message-ID: <[EMAIL PROTECTED]> > Content-Type: text/plain; charset=ISO-8859-1; format=flowed > > Aeee João!!! > > Valeu cara, muito obrigado, vou ler agora no almoço depois posto as > dúvidas...hehe > > Obrigado a todos!! > > > > Joao escreveu: > > segue em anexo um documento que eu fiz acho que +- 1 ano atras! > > Abraços! > > ----- Original Message ----- From: "Thiago Boufleuhr" > > <[EMAIL PROTECTED]> > > To: "Comunidade PostgreSQL Brasileira" > > <pgbr-geral@listas.postgresql.org.br> > > Sent: Tuesday, July 31, 2007 9:12 AM > > Subject: [pgbr-geral] pg_start_backup > > > > > > Ae pessoal, bom dia a todos! > > > > Podem me dar um help aki sobre o "pg_start_backup()"? > > Como q funciona a proc acima? Tipo, tenho configurado no postgre.conf a > > linha do archive_command conforme segue: > > > > 'cp "%p" /mnt/server/archivedir/"%f"' > > > > Soh que ao chamar a função, o postgre não esta gerando o arquivo de > > backup....poderiam me explicar o funcionamento dessa função e se é > > indicada para servidores de produção...caso negativo, me sugestionem > > algum método interno do postgre de backup automatico..... > > > > No Aguardo. > > > > _______________________________________________ > > 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 > > > > > ------------------------------ > > Message: 2 > Date: Tue, 31 Jul 2007 11:59:43 -0300 > From: "Joao" <[EMAIL PROTECTED]> > Subject: Re: [pgbr-geral] Erro estranho com varios joins! > To: "Comunidade PostgreSQL Brasileira" > <pgbr-geral@listas.postgresql.org.br> > Message-ID: <[EMAIL PROTECTED]> > Content-Type: text/plain; format=flowed; charset="iso-8859-1"; > reply-type=original > > o mais estranho ainda e q em outro server com a versão 8.1 roda > ----- Original Message ----- > From: "Leandro Guimarães Faria Corcete DUTRA" <[EMAIL PROTECTED]> > To: "Comunidade PostgreSQL Brasileira" <pgbr-geral@listas.postgresql.org.br> > Sent: Tuesday, July 31, 2007 10:56 AM > Subject: Re: [pgbr-geral] Erro estranho com varios joins! > > > Em Ter, 2007-07-31 às 10:08 -0300, Joao escreveu: > > > erro: ERROR: failed to build any 8-way joins) > > Andei olhando e cheguei a essas duvidas postadas em postgresql-general > > http://marc.info/?t=117155135300002&r=1&w=2, > > que não me ajudaram muito. > > > > Interessante que na dúvida acima foi relatado que esse erro foi > > consertado na versão 8.2.3. > > Não, após a 8.2.3 > <http://marc.info/?l=postgresql-general&m=117155352810767&w=2>. > > > > A query e bem extensa , e acho que não seria muito interessante > > posta-lá. > > Pode ser intereßante, quem sabe alguém imagina uma maneira mais sucinta > de escrevê-la, para o PostgreSQL aceitar. > > > -- > Leandro Guimarães Faria Corcete DUTRA <[EMAIL PROTECTED]> > Atech Fundação Aplicação de Tecnologias Críticas SP, BR > msnim:[EMAIL PROTECTED] > skype:leandro.gfc.dutra?chat +55 (11) 3040 7300 r151 > > > - - - - - > > Politica de Privacidade: Esta mensagem pode conter informacao confidencial > e/ou privilegiada. Se voce nao for o destinatario ou a pessoa autorizada a > receber esta mensagem, nao pode usar, copiar ou divulgar as informacoes nela > contidas ou tomar qualquer acao baseada nessas informacoes. Se voce recebeu > esta mensagem por engano, por favor avise imediatamente o remetente, > respondendo o e-mail e em seguida apague-o. Agradecemos sua cooperacao. > > Privacy Policy: This message may contain confidential and/or privileged > information. If you are not the addressee or authorized to receive this for > the addressee, you must not use, copy, disclose or take any action based on > this message or any information herein. If you have received this message in > error, please advise the sender immediately by reply e-mail and delete this > message. Thank you for your cooperation. > _______________________________________________ > pgbr-geral mailing list > pgbr-geral@listas.postgresql.org.br > https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral > > > > ------------------------------ > > Message: 3 > Date: Tue, 31 Jul 2007 13:37:13 -0300 > From: "Marcus Fernandez" <[EMAIL PROTECTED]> > Subject: [pgbr-geral] Dúvida sobre sequence > To: pgbr-geral@listas.postgresql.org.br > Message-ID: > <[EMAIL PROTECTED]> > Content-Type: text/plain; charset="iso-8859-1" > > Boa tarde, > > Sempre trabalhei com MySQL, porém tive Oracle na faculdade e gostei muito. > E, ao meu ver, o único banco livre semelhante ao Oracle, no momento, é o > PostgreSQL. Devido à isso, decidi utiliza-lo no meu TCC e pretendo continuar > utilizando em outros projetos também. > > Estive estudando sobre sequence e não consegui obter informações a respeito > de uma dúvida e ao testar a sequence, me gerou outra: > > 1) Ao fazer um teste de INSERT em uma tabela2 possuindo referência a um > campo da tabela1 e, tendo na tabela 2 um campo sequence e, este INSERT > incluir um dado não existente na tabela um, houve um erro de relacionamento, > o que era esperado. No entanto ao fazer um INSERT correto, pude verificar > que a sequência de números foi pulada, ou seja, foi gerado um id para uma > query com erro. > > Sei que os dados devem ser verificados na aplicação para que não ocorra erro > algum nas queries, no entanto seria prudente que não fosse gerado um id para > uma query inválida, caso isso venha a ocorrer. > > 2) Supondo que eu tenha um conjunto de dados dependente de outro, tal como > meses em um ano, como é possível gerar uma sequence para meses respeitando o > grupo ano? > Ano | Mes (auto incrementável) > 2007 | 01 > 2007 | 02 > 2007 | 03 > ................ > 2008 | 01 > > Seria isso. > > Obrigado à todos pela atenção ;) > Marcus Fernandez > -------------- Próxima Parte ---------- > Um anexo em HTML foi limpo... > URL: > http://listas.postgresql.org.br/pipermail/pgbr-geral/attachments/20070731/34cc4798/attachment-0001.htm > > > ------------------------------ > > Message: 4 > Date: Tue, 31 Jul 2007 10:54:13 -0600 > From: "Roberto Mello" <[EMAIL PROTECTED]> > Subject: Re: [pgbr-geral] Dúvida sobre sequence > To: "Comunidade PostgreSQL Brasileira" > <pgbr-geral@listas.postgresql.org.br> > Message-ID: > <[EMAIL PROTECTED]> > Content-Type: text/plain; charset="iso-8859-1" > > On 7/31/07, Marcus Fernandez <[EMAIL PROTECTED]> wrote: > > > > > > > > 1) Ao fazer um teste de INSERT em uma tabela2 possuindo referência a um > > campo da tabela1 e, tendo na tabela 2 um campo sequence e, este INSERT > > incluir um dado não existente na tabela um, houve um erro de relacionamento, > > o que era esperado. No entanto ao fazer um INSERT correto, pude verificar > > que a sequência de números foi pulada, ou seja, foi gerado um id para uma > > query com erro. > > > > Sei que os dados devem ser verificados na aplicação para que não ocorra > > erro algum nas queries, no entanto seria prudente que não fosse gerado um id > > para uma query inválida, caso isso venha a ocorrer. > > > Se eu entendi o que estas dizendo, voce estava esperando que o incremento da > sequencia fosse abortado quando houve erro. > > Seria interessante, mas sequencias do PostgreSQL nao trabalham assim, a meu > ver por que seria complicacao demais para beneficio de menos. > > Sequencias sao atomicas. Uma vez incrementadas, a sequencia nao volta atras, > a nao ser que voce mesmo "resete" a sequencia. > > 2) Supondo que eu tenha um conjunto de dados dependente de outro, tal como > > meses em um ano, como é possível gerar uma sequence para meses respeitando o > > grupo ano? > > Ano | Mes (auto incrementável) > > 2007 | 01 > > 2007 | 02 > > 2007 | 03 > > ................ > > 2008 | 01 > > > > Sequencias nao foram desenhadas com esse tipo de aplicacao em mente. Elas > foram desenhadas para serem numeros incrementados atomicamente. So' isso. > Quaisquer outro significado que quiseres atarrachar numa sequence, tens que > fazer no teu codigo, atraves do cliente ou funcoes em procedimentos > armazenados numa das linguagens suportadas no PostgreSQL. > > As funcoes de manipulacoes de data do PostgreSQL fazem aritimetica com > datas, a proposito. > > -Roberto > -------------- Próxima Parte ---------- > Um anexo em HTML foi limpo... > URL: > http://listas.postgresql.org.br/pipermail/pgbr-geral/attachments/20070731/6fcfadf3/attachment-0001.htm > > > ------------------------------ > > Message: 5 > Date: Tue, 31 Jul 2007 14:06:11 -0300 > From: Evandro Ricardo Silvestre <[EMAIL PROTECTED]> > Subject: Re: [pgbr-geral] Dúvida sobre sequence > To: Comunidade PostgreSQL Brasileira > <pgbr-geral@listas.postgresql.org.br> > Message-ID: <[EMAIL PROTECTED]> > Content-Type: text/plain; charset=ISO-8859-1; format=flowed > > Uma dica, > > Não costuma utilizar sequences para informações que o usuário irá ver, > por exemplo, código do cliente. Sempre há uma reclamação ou outra por > não voltar o valor excluido e essas coisas. > Costumo utilizar sequences apenas para controle internos, por exemplo, > uma nota fiscal de entrada de mercadorias, tem o número da NF que o > usuário informa e tem um identificador interno que o usuário nem sabe > que existe para ser a PK e exportar essa PK para outras tabelas. Assim > evito utilizar a informação informada manualmente e o usuário não vai > reclamar por perder a sequencia. > > sds > > Evandro > > > ------------------------------ > > Message: 6 > Date: Tue, 31 Jul 2007 14:46:41 -0300 > From: "Daniel Gaspary" <[EMAIL PROTECTED]> > Subject: Re: [pgbr-geral] Certificação PostgreSQL > To: "Comunidade PostgreSQL Brasileira" > <pgbr-geral@listas.postgresql.org.br> > Message-ID: > <[EMAIL PROTECTED]> > Content-Type: text/plain; charset=ISO-8859-1 > > > Em 30/07/07, Roberto Mello<[EMAIL PROTECTED]> escreveu: > > > On Sat, Jul 28, 2007 at 05:26:43PM -0300, Fabio Telles wrote: > > > > > > > > Muito pelo contrário, está cheio de Uniblá e Tabajaras por aí e elas > > > > são A > > > > regra. E vou te dizer mais... as fábricas de software também não querem > > > > > > Eu concordo. Entrevisto muita gente para trabalhar como programador ou em > > > TI, e uma boa parte dos que chegam para eu entrevistar nao sabem > > > programar. Nada. > > Isso sim deveria ser a "regra" e não confiar num certificado que as > vezes mesmo tendo o carimbo de alguma grande empresa não atesta mesmo > o conhecimento do candidato. > > Na empresa que trabalho, temos muita dificuldade de encontrar gente > para trabalhar. (Não faço parte do processo de seleção, apenas estou > informado). > > O "Problema" se refere a algo que falei antes. A maioria das empresas > não quer investir em pesquisa, as unitabajaras da vida forma gente > para ser programador que não pense muito. Como a empresa aqui não faz > parte dos 99% de TI que desenvolve basicamente cadastros, cadastros > Web, cadastros em j2EE etc.... daí ficam penando pra achar gente. > > > ------------------------------ > > Message: 7 > Date: Tue, 31 Jul 2007 15:18:49 -0300 > From: " Pablo Sánchez " <[EMAIL PROTECTED]> > Subject: Re: [pgbr-geral] Dúvida sobre sequence > To: "Comunidade PostgreSQL Brasileira" > <pgbr-geral@listas.postgresql.org.br> > Message-ID: > <[EMAIL PROTECTED]> > Content-Type: text/plain; charset=ISO-8859-1 > > Segue > > Em 31/07/07, Marcus Fernandez<[EMAIL PROTECTED]> escreveu: > > Boa tarde, > > > > Sempre trabalhei com MySQL, porém tive Oracle na faculdade e gostei muito. > > E, ao meu ver, o único banco livre semelhante ao Oracle, no momento, é o > > PostgreSQL. Devido à isso, decidi utiliza-lo no meu TCC e pretendo continuar > > utilizando em outros projetos também. > > > > Estive estudando sobre sequence e não consegui obter informações a respeito > > de uma dúvida e ao testar a sequence, me gerou outra: > > > > 1) Ao fazer um teste de INSERT em uma tabela2 possuindo referência a um > > campo da tabela1 e, tendo na tabela 2 um campo sequence e, este INSERT > > incluir um dado não existente na tabela um, houve um erro de relacionamento, > > o que era esperado. No entanto ao fazer um INSERT correto, pude verificar > > que a sequência de números foi pulada, ou seja, foi gerado um id para uma > > query com erro. > > > > Sei que os dados devem ser verificados na aplicação para que não ocorra erro > > algum nas queries, no entanto seria prudente que não fosse gerado um id para > > uma query inválida, caso isso venha a ocorrer. > > O que acontece é que a transação reserva aquele número para aquela > query, que, no caso de dar erro, é desfeita, mas o sequenciador já foi > incrementado. Se outra transação em paralelo ocorrer com sucesso e eu > decrementar posteriormente, qual seria o problema? Eu acabaria por > reliberar uma sequencia que está sendo utilizada, o que me causaria > posteriormente um erro em relação à inserção, pois o campo deve, em > tese, ser unique. Como isso não causa nenhum dano nas aplicações e é > até mesmo perigoso fazê-lo, não há um decremento do sequenciador. Isso > ocorre com qualquer SGDB transacional. Tive as mesmas questões > aparecendo com bancos SQL Server e Oracle. > > > 2) Supondo que eu tenha um conjunto de dados dependente de outro, tal como > > meses em um ano, como é possível gerar uma sequence para meses respeitando o > > grupo ano? > > Ano | Mes (auto incrementável) > > 2007 | 01 > > 2007 | 02 > > 2007 | 03 > > ................ > > 2008 | 01 > > ? Viajei nessa. > > > ------------------------------ > > Message: 8 > Date: Tue, 31 Jul 2007 15:35:15 -0300 > From: "Marcus Fernandez" <[EMAIL PROTECTED]> > Subject: Re: [pgbr-geral] Dúvida sobre sequence > To: "Comunidade PostgreSQL Brasileira" > <pgbr-geral@listas.postgresql.org.br> > Message-ID: > <[EMAIL PROTECTED]> > Content-Type: text/plain; charset="iso-8859-1" > > Tendi.. é que no MySQL não ocorre esse problema. Ele primeiro executa a > query para posteriormente reservar um id para essa query. E também faz > automáticamente o que citei do sequenciamento por grupos, onde no próprio > manual diz que internamente o MySQL faz um MAX(campo) +1, o que daria > perfeitamente para criar uma procedure se for o caso, no postgresql. > > Mas tudo bem, o que citei do 'buraco' da sequence foi apenas de curiosidade > mesmo, de repente havia alguma maneira nativa do banco de dados que tivesse > me escapado ao ler o manual. Mas nada que irá influenciar drásticamente no > meu projeto. Infelizmente o problema que citei com meses/dias é outra > situação, mas que foi bem representada dessa maneira, e também não terei > problemas com transações concorrentes pois apenas 1 processo (garantido) > executará a query que me dê um 'novo mês', sendo assim posso implementar uma > procedure que faça o mesmo que o MySQL... MAX(campo) + 1. > > Obrigado à todos que responderam pois me ajudaram bastante na compreensão do > que é uma sequence, quando usar etc. > > Abraços, > Marcus Fernandez > > On 7/31/07, Pablo Sánchez <[EMAIL PROTECTED]> wrote: > > > > Segue > > > > Em 31/07/07, Marcus Fernandez<[EMAIL PROTECTED]> escreveu: > > > Boa tarde, > > > > > > Sempre trabalhei com MySQL, porém tive Oracle na faculdade e gostei > > muito. > > > E, ao meu ver, o único banco livre semelhante ao Oracle, no momento, é o > > > PostgreSQL. Devido à isso, decidi utiliza-lo no meu TCC e pretendo > > continuar > > > utilizando em outros projetos também. > > > > > > Estive estudando sobre sequence e não consegui obter informações a > > respeito > > > de uma dúvida e ao testar a sequence, me gerou outra: > > > > > > 1) Ao fazer um teste de INSERT em uma tabela2 possuindo referência a um > > > campo da tabela1 e, tendo na tabela 2 um campo sequence e, este INSERT > > > incluir um dado não existente na tabela um, houve um erro de > > relacionamento, > > > o que era esperado. No entanto ao fazer um INSERT correto, pude > > verificar > > > que a sequência de números foi pulada, ou seja, foi gerado um id para > > uma > > > query com erro. > > > > > > Sei que os dados devem ser verificados na aplicação para que não ocorra > > erro > > > algum nas queries, no entanto seria prudente que não fosse gerado um id > > para > > > uma query inválida, caso isso venha a ocorrer. > > > > O que acontece é que a transação reserva aquele número para aquela > > query, que, no caso de dar erro, é desfeita, mas o sequenciador já foi > > incrementado. Se outra transação em paralelo ocorrer com sucesso e eu > > decrementar posteriormente, qual seria o problema? Eu acabaria por > > reliberar uma sequencia que está sendo utilizada, o que me causaria > > posteriormente um erro em relação à inserção, pois o campo deve, em > > tese, ser unique. Como isso não causa nenhum dano nas aplicações e é > > até mesmo perigoso fazê-lo, não há um decremento do sequenciador. Isso > > ocorre com qualquer SGDB transacional. Tive as mesmas questões > > aparecendo com bancos SQL Server e Oracle. > > > > > 2) Supondo que eu tenha um conjunto de dados dependente de outro, tal > > como > > > meses em um ano, como é possível gerar uma sequence para meses > > respeitando o > > > grupo ano? > > > Ano | Mes (auto incrementável) > > > 2007 | 01 > > > 2007 | 02 > > > 2007 | 03 > > > ................ > > > 2008 | 01 > > > > ? Viajei nessa. > > _______________________________________________ > > pgbr-geral mailing list > > pgbr-geral@listas.postgresql.org.br > > https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral > > > -------------- Próxima Parte ---------- > Um anexo em HTML foi limpo... > URL: > http://listas.postgresql.org.br/pipermail/pgbr-geral/attachments/20070731/7e21c9f4/attachment.htm > > > ------------------------------ > > _______________________________________________ > pgbr-geral mailing list > pgbr-geral@listas.postgresql.org.br > https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral > > > Fim da Digest pgbr-geral, volume 5, assunto 216 > *********************************************** > > Ismael Costa Junior DBA POSTGRESQL DATABASE DEVELOPER LINUX E-mail.: [EMAIL PROTECTED] MSN.: [EMAIL PROTECTED] Contato.: (11) 9697-1856 _______________________________________________ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral