Org Arq
1- Sobre o Trabalho: O trabalho consiste na continuação do trabalho 1. Agora, além das funcionalidades de inserção e recuperação de registros é possível remover registros e inserir novos reutilizando o espaço ocupado por registros anteriores.
Lembrando, foram implementados dois tipos: - Tipo 1: delimitadores entre campos e registros de tamanho fixo em bytes; - Tipo 2: delimitadores entre campos e delimitadores entre registros. A organização do código permanece a mesma, somente novas funções foram inseridas. As novas funções são as seguintes: - remocaoLogica, nos arquivos trab_arquivos.c e trab_arquivos_tipo2.c - removePrimario, nos arquivos indicePrimario.c e indicePrimario_2.c - removeSecundario, nos arquivos indiceSecundario.c e indiceSecundario_2.c Em ambos os tipos de arquivos a remoção ocorre pela chave secundária Last Name.
2- Método Tipo 1:
A remoção no arquivo do tipo1 ocorre da seguinte maneira: Ao selecionar a opção 6 no menu principal, o usuário será encaminhado para uma página que pede que entre com o sobrenome que deseja excluir. Após a entrada, será impresso na tela o registro correspondente, pedindo confirmação se é o registro que realmente deseja excluir, pois como se trata de uma chave secundária, pode existir mais de um registro para a mesma chave. Em caso de negativa para o registro impresso na tela, o próximo será impresso.
2.1- Descrição implementação remoção: Somente é feita a remoção lógica nos arquivos de dados e índices. No arquivo de dados, para marcar que um registro está removido, a chave original digitada pelo usuário é substituída por -200, sendo assim, não corre risco de ter uma chave de registro válido com o mesmo valor, já que a chave primária deve ser um valor positivo. No arquivo de índices, primário e secundário, o RRN, que também é um valor estritamente positivo, é substituído por -100. A chave no arquivo primário também recebe o valor de -100,