Olá, Euler O que eu quis dizer é que para o PostgreSQL sempre que um registro é atulizado (UPDATE) o mesmo vai aparecer na última linha da tabela e ao fazer vários SELECTs nesta tabela e nenhuma operação de UPDATE ocorrer a ordem sempre será mantida. Estou considerando que a tabela não possui nenhum índice.
E sua opinião é sempre importante :) 2009/8/18 Euler Taveira de Oliveira <[email protected]> > Fabrízio de Royes Mello escreveu: > > O Jota matou a tua charada... isso é realmente uma questão da > > implementação do PostgreSQL, > > > Não é questão de implementação. O próprio padrão SQL *não* garante a ordem > dos > registros. A teoria relacional diz que tabelas são conjuntos de dados; e, > em > um conjunto *não* há garantia de ordem. > > > nos na prática o UPDATE não existe no > > PostgreSQL, o que ele faz é um DELETE e um INSERT... teste para voce > > ver, delete o registro e o insira novamente com o valor alterado... vai > > produzir o mesmo efeito... > > > Ugh?! É claro que o UPDATE existe. Não confunda os leigos com declarações > desse tipo. O que acontece é que o MVCC [1] trabalha assim (torna uma tupla > invisível e cria outra). São tantas as vantagens que a maioria dos SGBDs > comerciais utilizam esse conceito. > > Quanto a produzir o mesmo efeito, não esteja certo disso. Se você tiver > fillfactor definido na sua tabela ou utilizando uma versão >= 8.3 (HOT), o > registro que sofreu alteração nem sempre aparecerá na última posição. > > > [1] http://en.wikipedia.org/wiki/Multiversion_concurrency_control > > > -- > Euler Taveira de Oliveira > http://www.timbira.com/ > _______________________________________________ > pgbr-geral mailing list > [email protected] > https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral > []s -- JotaComm http://jotacomm.wordpress.com http://www.dextra.com.br/postgres
_______________________________________________ pgbr-geral mailing list [email protected] https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
