Prezado Osvaldo Nosso objetivo em projetos de migração é permitir que o cliente possa de imediato abandonar o ambiente mainframe, portando suas aplicações de COBOL para COBOL na baixa plataforma. Fazemos isto de forma 100% mecanizada (conversor/tradutor) de dialetos COBOL. Isto permite uma economia no que refere-se aos custos de manutenção dos mainframes (software e hardware), podendo assim o cliente passar a utilizar os recursos disponibilizados ($$$$$$$$) na atualização do parque computacional, e com o mesmo sistema rodando na baixa plataforma, o cliente pode ir investindo no desenvolvimento de um novo sistema ou mesmo atualizar a aplicação corrente com novos recursos (web, interface gráfica) ou interagir com outras linguagens, pois o banco estará no padrão SQL (DB2 ou Oracle): é como se fosse trocar o pneu furado com o carro em movimento.
Em função disto, não mexemos na estrutura do sistema, a nós cabe somente mudar de plataforma (compilador e BD), e depois o cliente resolve o que fazer. Agradeço sua atenção e considerações acerca do assunto, Cordial Abraço Jorge Oliveira SIALTECH Informática Brasília-DF > Nossa! Hierárquico me lembra o IMS da IBM (vagamente porque faz muito > tempo...). > Creio que a grande diferença entre um banco de dados hierárquico, ou > um em rede, e um relacional é que neste último você não navega pelos > registros mas sim trata o "conjunto" de dados, portanto você não tem > algo do tipo "recupere o registro anterior" ou "recupere o próximo" > tão comuns nos bd navegacionais (se é que esta palavra existe). Num BD > relacional você declara o que deseja e não o como obter o que deseja. > Concordo que possa ser não trivial mas creio que você deveria avaliar > a possibilidade de modificar sua aplicação para que ele passe a > trabalhar sobre "conjuntos" (sim, é a mesma idéia da Teoria dos > Conjuntos que aprendemos na escola). > Uma possível solução é você utilizar cursor, ou seja, você recupera um > conjunto de dados e em sua aplicação utiliza o cursor para navegar > entre estes registros recuperados. > http://www.postgresql.org/docs/current/interactive/sql-declare.html > http://www.postgresql.org/docs/current/interactive/sql-fetch.html > http://www.postgresql.org/docs/current/interactive/sql-move.html > http://www.postgresql.org/docs/current/interactive/sql-close.html > Nos casos de hierarquia provenientes de um auto-relacionamento talvez > você possa utilizar os contrib ltree e tablefunc/connectby. > http://www.postgresql.org/docs/current/interactive/contrib.html > Osvaldo 2009/5/22 Jorge Oliveira <jlp.oliveira em gmail.com>: > > Agradeço aos colegas JotaComm e ao Osvaldo pelas informações. > > O motivo da minha dúvida, é porque trabalho com projetos de migração de > sistemas legados escritos em COBOL para a baixa plataforma, usando Oracle e > DB2. > > Estou fazendo testes com o COBOL e PostgreSQL para passar a utilizá-lo em > projetos futuros. > > Como em alguns "cases" os bancos de dados são hierárquicos (o que permite a > leitura sequencial dos registros nas tabelas), preciso acessar pontualmente > um determinado indice em função da forma que o registro é lido na tabela do > banco hierarquico (read next e read previus). > > Se tiverem uma idéia de como posso resolver, desde já agradeço > _______________________________________________ pgbr-geral mailing list [email protected] https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
