So lembrando que os campos seriais sao de incremento transacionais...
So sera computado o valor ID+1 em tempo de confirmacao (commit)
enquanto as sequences sao em tempo de requisicao, toda vez q ela eh
requisitada
ela gera um novo numero sequencial.
Eu particularmente nao vejo motivo para usar os campos seriais, uma vez que
um
simples comando com a funcao nextVal resolveria o problema...
INSERT INTO table1 VALUES (nextVal('seq_table1'), 'Teste');
com campos seriais teria que serializar as transacoes para garantir
integridade dos
registros em bancos com acesso muito alto... Ao menos foi o que fiz para
resolver os
problemas q tive na epoca com campos seriais
Em 31/07/07, Pablo Sánchez <[EMAIL PROTECTED]> escreveu:
>
> Sim, ainda é assim...
>
> Eu com a classe POP aqui quebrei a cabeça tentando achar como é que
> fazia campos seriais automaticamente para não ter que criar triggers e
> sequences manualmente... não teve jeito...
>
> Em 31/07/07, Miere<[EMAIL PROTECTED]> escreveu:
> > Certa vez, meu professor da epoca de faculdade me falou que tais
> "sequence"s
> > foram baseadas em uma solucao utilizada pela oracle para evitar que
> > operacoes concorrentes tivessem mesmo ID... Se ainda eh assim nao sei,
> nao
> > uso Oracle desde q sai da faculdade...
> >
> > Em 31/07/07, Pablo Sánchez <[EMAIL PROTECTED]> escreveu:
> > >
> > > Em 31/07/07, Leandro Guimarães Faria Corcete DUTRA<[EMAIL PROTECTED]>
> > escreveu:
> > > > Em Ter, 2007-07-31 às 15:35 -0300, Marcus Fernandez escreveu:
> > > > > 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.
> > > >
> > > > Veja que o MySQL tem um simples autoincremento proprietário,
> > enquanto o
> > > > PostgreSQL tem uma seqüência padrão. A diferença é importante,
> porque o
> > > > autoincremento é ligado à tabela (por isso o MAX(campo) + 1),
> enquanto a
> > > > seqüência é um objeto à parte para uso potencialmente por várias
> > > > tabelas.
> > >
> > > Exato. Exemplificando um pouco para facilitar a idéia de quando
> > > utilizar isso, vamos supor que eu tenha 2 tabelas de clientes
> > > distintas, pessoa física e pessoa jurídica. Poderia utilizar um único
> > > sequenciador para os dois, assim, meu cliente 1 era o João, o 2 uma
> > > PJ, e assim vai...
> > > _______________________________________________
> > > pgbr-geral mailing list
> > > [email protected]
> > >
> > https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
> > >
> >
> >
> >
> > --
> > Miere Teixeira - Jornal ClasseA
> >
> > // Analista de interfaces
> > // Analista de redes
> > // Programador C/C++/PHP
> > // Tecnólogo em Informática
> > _______________________________________________
> > pgbr-geral mailing list
> > [email protected]
> > https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
> >
> >
> _______________________________________________
> pgbr-geral mailing list
> [email protected]
> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
>
--
Miere Teixeira - Jornal ClasseA
// Analista de interfaces
// Analista de redes
// Programador C/C++/PHP
// Tecnólogo em Informática
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral