hum... no quesito procedures no Postgres um dificuldade que tive foi fazer um laço que percorresse as colunas de uma tabela, exemplo:
No AfterPOST while EOF -- percorre o registro for i ate tabela.colunas.conta se old.campo[i].valor <> new.campo[i].valor ... No Firebird isso é facim com Fields se não me engano isso é muito usado pra guardar logs de alteração em determinadas tabelas hoje faço isso via sistema Marcelo Silva ------------------------------- From: Matheus de Oliveira Sent: Friday, August 17, 2012 1:50 PM To: Comunidade PostgreSQL Brasileira Subject: Re: [pgbr-geral] firebirs X postgres 2012/8/17 Alberto Radtke <albert...@gmail.com> Bom, vou tentar esclarecer o ambiente e dai a problemática. # Temos uma aplicação web, onde a partir do login (cliente) é identificado qual base de dados ele deve acessar. # As bases de dados ficam todas em um mesmo servidor e na mesma estrutura de diretório. # Cada base de dados corresponde a um arquivo separado Então sem dúvida você terá um único cluster do PostgreSQL. Quanto à usar bases de dados ou esquemas, vai ser uma questão de escolha, parece que pra você qualquer um vai ter o mesmo trabalho na mudança. Mas acho que vai ter muito mais vantagens com esquemas, já que você tem dados que são "globais", ou seja, usado por todos. Uma dica no caso de esquemas, seria que deixe um esquema para dados "globais" e um para cada cliente, daí após o login você altera o search_path para casar com o esquema do cliente. Exemplo: SET search_path TO esquema_cliente_xxx, esquema_global; Estudo um pouco sobre schemas e search_path para entender melhor. # Hoje o ambiente é Microsoft mas está em movimentação para Linux. Ótimo! # É utilizado intensamente procedures e trigres, então o maior trabalho não é a migração da estrutura e os dados, mas sim as procedures e trigres, que em alguns casos são bem complexas. Não tem muito jeito, terás de fazer isso na "mão". Eu recomendo a PL/pgSQL mesmo, que a sintaxe é semelhange à do Firebird. Só uma dica, a forma de retorno de funções do Firebird seguem "exatamente" o mesmo modelo que o RETURNS TABLE do PostgreSQL, isso vai te ajudar na conversão. Daí você simplesmente trocará o comando SUSPEND por RETURN NEXT. Não seria legal se alguém criasse uma linguagem para o PostgreSQL baseada na sintaxe do Firebird? Na teoria seria só adaptar a gramática da pgSQL, na prática eu dúvido que seja tão simples assim. Meu problema é que com o Firebird é em achar mão de obra e suporte documental. Então estamos analisando o custo benefício da migração para o PostgreSQL. Ai vem a discussão que estou levantando aqui, para eu poder ter a visão de muitas pessoas para tomar alguma decisão, pois em termos de documentação oficial e números não achei nada para ajudar. Não entendi. De que números está falando? -- Matheus de Oliveira -------------------------------------------------------------------------------- _______________________________________________ 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