Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #59 da revista programar. Faz já o download aqui!

nnunoo

Dúvida LibreOffice Base

Mensagens Recomendadas

nnunoo    0
nnunoo

Boa tarde,

No meu trabalho criei uma base de dados em LibreOffice Base, não criei em Access, pois não temos licenças, ou melhor não há dinheiro para tal, e então quem pertence à administração pública tem que usar o pacote LibreOffice.

Posto isto, e após algumas horas perdidas (pesquisa e tentativa erro) lá consegui fazer a base de dados, não é muito diferente do Access, mas tem algumas particularidades.

A minha base de dados é constituída por 2 tabelas, Identificação da Pessoa e Identificação do Livro. Sendo que nas 2 tabelas têm uma chave primária "NrCC", e estão relacionadas com a relação "left join". O problema é que quando executo o formulário respetivo e registo 2 livros com o mesmo "NrCC" dá-me o seguinte erro:

Error inserting the new record. Violation of unique constraint SYS_PK_136: duplicate value(s) for column(s) "NrCC" in statement...

Alguém conhece ou trabalha com o Base, que me consegue ajudar?

Obrigado.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
nnunoo    0
nnunoo

NrCC é o número do cartão do cidadão.

Ou seja, na tabela Identificação da Pessoa, tenho os seguintes campos: NrCC, Nome Completo, Data Nascimento, Morada, Contacto Telefónico. Na tabela Identificação do Livro, tenho os seguintes campos: NrCC, Nr Série Livro, Ano Livro, Autor, Editora e Nome do Livro.

Tenho NrCC na tabela Identificação do Livro, para identificar a pessoa que requisitou o livro utilizando a informação que consta na tabela Identificação da Pessoa.

Como acham que devo fazer? Sendo que pretendo manter estes campos.

Obrigado.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
PaisNeto    2
PaisNeto

Bom dia,

O que devias fazer, era ter 3 tabelas

Uma para identificar as pessoas, outra para identificar os livros e outra para registar as requisições

Na tabela das requisições guardas a chave primária da pessoa e a chave primária do livro, podes ainda guardar a data da requisição.

Da maneira que estás a fazer não é a maneira correta.

  • Voto 1

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
Flinger    50
Flinger

Concordo com o PaisNeto. Uma BD é assim que deveria ficar. Apenas acrescento, que deverias ter também uma flag/campo na tabela requisições, para indicar se o livro já foi ou não devolvido. Dessa forma consegues identificar quais os livros que estão "fora", sem teres de apagar o histórico.

  • Voto 1

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.