MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

Obrigado

Administração do MaximoAccess

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access

    [Resolvido]Relacionamentos entre tabelas

    Compartilhe

    Osmario
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 21
    Registrado : 08/10/2017

    [Resolvido]Relacionamentos entre tabelas

    Mensagem  Osmario em 6/4/2018, 05:03

    Boa Noite!

    Estou desenvolvendo meu primeiro bd e estou tendo dificuldades no item relacionamentos.
    Criei os relacionamentos segundo a lógica que me pareceu mais plausível mas, quando tento registrar dados no Formulário, algumas vezes vai outras não. E as mensagens do Access (de erro) são sempre de que um campo é requerido, ou melhor, "a chave de junção da tabela não está no conjunto de registros".
    Em resumo, só consigo acrescentar registros se for diretamente nas tabelas.

    Grato

    Osmário
    Anexos
    BIBLOJESTRE.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (162 Kb) Baixado 9 vez(es)
    avatar
    good guy
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1228
    Registrado : 05/02/2010

    Relacionamentos entre tabelas

    Mensagem  good guy em 6/4/2018, 21:24

    Olá Osmar,

    No MaximoAccess existe bastante material sobre relacionamento de tabelas. Esse assunto é básico, você precisa praticar relacionamentos antes de desenvolver qualquer aplicativo ou sistema com fins pre-definidos. Projetar antes de Desenvolver.
    Primeiro, você tem uma tabela-chave com campo(s) com valores que não se repetem como nomes próprios e um ou dois campos códigos indexadores que não permitem duplicação e do outro lado, outra tabela relacionada que possuem campos códigos que podem se repetir de mesmo nome que o da primeira tabela. Entende? E do mesmo modo, campos com nomes próprios que podem se repetir ligados a estes campos códigos.  

    Assim você pode ter diversas tabelas que funcionem dessa maneira que expliquei acima:
    Exemplo:
    (?) => Chave Primária (Não duplicável)

    Quantidade Inicial = 100 do produto Laranja

    Primeira Tabela(tblProdutos)               Segunda Tabela (tblVendas)                      Terceira Tabela (Clientes)
    (?)IdCodigo      ===========>     IdCodigo                                                    (?)IdCliente (Não duplicável) ======
        Produto (Ex.Laranja)                     Produto (Ex. Laranja)                                       Cliente                                      ||
        Quantidade (98 em estoque)          Quantidade (2 vendidas)            
                                                           IdCliente (Duplicável)<==========================================||  
                                                           Ciente

    Osmario
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 21
    Registrado : 08/10/2017

    Relacionamentos entre tabelas

    Mensagem  Osmario em 6/4/2018, 22:58

    Good Guy
    Obrigado por sua resposta.
    No banco de dados que anexei à mensagem que você teve a gentileza de responder estão obedecidas as diretivas a que você se refere quanto a entidades - relacionamentos. Se possível, veja se me assiste razão ou, em caso negativo, corrija-me.

    Obrigado
    Osmário


    avatar
    good guy
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1228
    Registrado : 05/02/2010

    Relacionamentos entre tabelas

    Mensagem  good guy em 7/4/2018, 20:53

    Olá Osmario,

    Se outro colega não intervir, na segunda vou procurar te dar assistência. Ok?

    Osmario
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 21
    Registrado : 08/10/2017

    Relacionamentos entre tabelas

    Mensagem  Osmario em 8/4/2018, 00:59

    Obrigado Good Guy.


    Noobezinho
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3632
    Registrado : 29/06/2012

    Re: [Resolvido]Relacionamentos entre tabelas

    Mensagem  Noobezinho em 8/4/2018, 14:49

    Osmario


    Vamos la Wink

    O que digo e sempre repito, que embora o Access seja um banco de dados relacional, devemos analisar

    os relacionamentos que iremos ter, senão ao invés de nos ajudar, eles poderão nos atrapalhar,

    além de deixar a página de relacionamento parecido com uma teia. Razz

    As duas tabelas  chaves do teu  aplicativo é sem dúvida, tbllivros e tblAutores  e estão corretamente relacionadas.

    Por que?

    Porque não deverá ter um livro orfão, ou seja, um livro que não tenha autor, então precisamos fazer esse relacionamento

    para que quando se adicionar um livro, que seja adicionado um autor para ele.

    Quanto a outras duas tabelas, a coisa já é diferente:

    A tblAssuntos não precisa de relacionamento, uma vez que será usada uma combobox no

    formulário da tabela livros com todos os assuntos listado nela.

    Olhando a tbl Sumario, percebo que não á necessidade dela uma vez que se pode criar um campo na tblLivros para o sumário.

    Assim evita do usuário ter que abrir um outro formulário só pra preencher um campo.

    Concluindo, digo que relacionamento é bom, mas temos que analisar isso em todos os aspectos.

    [ ]'s

    Osmario
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 21
    Registrado : 08/10/2017

    Relacionamentos entre tabelas

    Mensagem  Osmario em 9/4/2018, 06:46

    Noobezinho

    Obrigado por sua resposta.
    Eu realmente pensei em usar a tabela tblAssunto como combobox mas aí me faltou experiência, estrada, vivência.
    Quanto à tabela tblSumário não havia feito como você sugere porque me assaltou a seguinte dúvida:

    O banco de dados pretende catalogar 900 livros e, em cada livro, o sumário deste. Isto gerará um campo com aproximadamente 60.000
    linhas, supondo que cada livro tenha vinte entradas ou linhas no sumário, em média.

    Minha dúvida é, se usar o sumário como campo da tabela tblLivros, o banco de dados não ficará lento quando tiver que abrir o formulário frmLivros para cadastrar algum livro novo, ou mesmo para criar uma consulta que vise recuperar algum dado?

    Obrigado por sua disposição em ajudar.

    Osmário Ávila.

    Noobezinho
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3632
    Registrado : 29/06/2012

    Re: [Resolvido]Relacionamentos entre tabelas

    Mensagem  Noobezinho em 9/4/2018, 10:52

    Fique tranquilo sobre isso

    Vou repetir o que já disse aqui no fórum:

    Um dos meus clientes, de uma clínica veterinária tem cadastrado:

    Proprietários: 8406
    Mascotes      11071 - com campo memorando de histórico clinico.
    Quadro de vacinas  12239

    Esses dados são de 2012, quando estive na clinica dele atualizando o sistema.

    Então fica a teu critério.

    No que decidir, o campo sumário deve ser memorando,

    ou vai esbarrar no limite de caracteres (255).

    [ ]'s

    Osmario
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 21
    Registrado : 08/10/2017

    Relacionamentos entre tabelas

    Mensagem  Osmario em 9/4/2018, 11:29

    Obrigado Noobezinho

    [ ]s

    Noobezinho
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3632
    Registrado : 29/06/2012

    Re: [Resolvido]Relacionamentos entre tabelas

    Mensagem  Noobezinho em 9/4/2018, 11:35

    Estamos aí, no que puder ajudar !



    Boa sorte!

      Data/hora atual: 23/10/2018, 15:29