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

    Dúvida relacionamento de tabelas

    Compartilhe

    felipe323
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 7
    Registrado : 18/05/2015

    Dúvida relacionamento de tabelas

    Mensagem  felipe323 em 9/2/2018, 15:55

    Bom dia, boa tarde e boa noite !

    Tenho uma tabela com os seguintes campos:

    cod_livro_portugues : (não é chave primário e é número)

    cod_livro_espanhol : (não é chave primário e é número)

    cod_livro_ingles : (não é chave primário e é número)

    E outra tabela com os seguintes campos :

    Num_livro_portugues: (Não é chave primária e é texto)

    Num_livro_espanhol: (Não é chave primária e é texto)

    Num_livro_ingles: (Não é chave primária e é texto)


    -----

    A primeira tabela eu preeencho a partir do código de barras de livros através de um formulario mas os campos da outra tabela que sao os números nao sao codigo de barras e terei que digitar.

    Minha dúvida é : Como posso fazer com que ao digitar o código na primeira tabela ele automaticamente puxe os dados da outra?

    Ex:

    Tabela 1 -> cod_livro_portugues = 123456789

    Tabela 2 -> cod_livro_portugues = 123456789 então Num_livro_portugues = "BR1111"

    avatar
    cleverson_manaus
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 891
    Registrado : 23/09/2011

    Re: Dúvida relacionamento de tabelas

    Mensagem  cleverson_manaus em 9/2/2018, 17:40

    Sugiro as seguintes tabelas e campos:

    tb_livro
    id_livro
    codbarra_livro
    idioma_livro


    tb_idioma
    id_idioma
    nome_idioma

    Assim vc consegue o que deseja.

    Qualquer dúvida, manda aí!

    Abraços,





    .................................................................................
    [Você precisa estar registrado e conectado para ver esta imagem.]

    "É fazendo que se aprende a fazer aquilo que se deve aprender a fazer."(Aristóteles)
    - Dúvida resolvida!!! Marcar o tópico como resolvido!!!

    frankhosaka
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 14
    Registrado : 22/12/2017

    Re: Dúvida relacionamento de tabelas

    Mensagem  frankhosaka em 10/2/2018, 10:38

    Felipe,

    O Access não pode fazer nada se as tabelas não tem uma chave em comum entre as tabelas.

    No caso dos livros, eu não sei como criar um único identificador para eles.

    Por exemplo, Monteiro Lobato escreveu O Sitio do Pica Pau Amarelo e Machado de Assis escreveu Meu Primo Basilio. O autor não pode ser chave primária porque ele escreveu vários livros. O título do livro também não pode ser chave primária porque qualquer autor pode escrever uma obra com um título que já foi usado no passado. Por exemplo, Guerra nas Estrelas tem várias versões.

    Se você encontrar um identificador para cada livro, é a partir daí é que você pode pensar no relacionamento e ter um Access bastante produtivo, tipo assim:

    tblLivros
    campo: Id
    campo: Autor
    campo: Titulo
    campo: Editora
    campo: DataPublicação
    campo: Idioma

    tblLivrosEmprestados
    Campo: Id
    Campo: Cliente
    Campo: DataInicial
    Campo: DataDevolução

    Aqui, o Access pode fazer um controle dos livros emprestados, pois temos duas tabelas com um denominador comum, mas uma delas tem que ter chave primária, não pode ter dois livros com o mesmo id.
    avatar
    cleverson_manaus
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 891
    Registrado : 23/09/2011

    Re: Dúvida relacionamento de tabelas

    Mensagem  cleverson_manaus em 10/2/2018, 14:39


    Bom dia caros,

    Acredito que um identificador não seja problema, pois cada livro tem o ISBN:

    "Criado em 1967 e oficializado como norma internacional em 1972, o ISBN - International Standard Book Number - é um sistema que identifica numericamente os livros segundo o título, o autor, o país e a editora, individualizando-os inclusive por edição.

    O sistema ISBN é controlado pela Agência Internacional do ISBN, que orienta e delega funções às agências nacionais.

    No Brasil, a Biblioteca Nacional coordena e supervisiona as atividades técnicas da Agência Brasileira ISBN, em parceria com a Fundação Miguel de Cervantes responsável pela gerência administrativa e pela interface com a Agência Internacional.

    A partir de 1º de janeiro de 2007, o ISBN passou de dez para 13 dígitos, com a adoção do prefixo 978. O objetivo foi aumentar a capacidade do sistema, devido ao crescente número de publicações, com suas edições e formatos.

    Para cumprir a missão de informar e atender aos editores, livreiros, bibliotecas e distribuidores brasileiros, a Agência Brasileira ISBN reúne neste novo portal todas as informações referentes ao sistema ISBN no país, inclusive o Cadastro Brasileiro de ISBNs.

    O Cadastro Brasileiro do ISBN não é elaborado nem mantido pela Biblioteca Nacional, as informações são enviadas pelos editores/autores cadastrados na Agência. Os dados são exportados para a Agência Internacional ISBN para compor o Registro Global de Editores."

    Fonte: [Você precisa estar registrado e conectado para ver este link.]



    Acredito que a dúvida do colega, se resolve somente com as tabelas bem elaboradas.

    Abraços,


    .................................................................................
    [Você precisa estar registrado e conectado para ver esta imagem.]

    "É fazendo que se aprende a fazer aquilo que se deve aprender a fazer."(Aristóteles)
    - Dúvida resolvida!!! Marcar o tópico como resolvido!!!
    avatar
    Cláudio Más
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1276
    Registrado : 21/01/2012

    Re: Dúvida relacionamento de tabelas

    Mensagem  Cláudio Más em 10/2/2018, 16:09

    Boa tarde,

    Apesar de existir o campo ISBN que serviria como chave primária na tabela de livros, por ter 13 caracteres haveria um problema de performance em uma base de dados volumosa.
    E ainda, essa informação poderia não estar disponível no momento do cadastro, tendo que ser preenchida posteriormente.

    Para todos os casos, recomendo usar o campo de numeração automática como chave primária.

    Segue um link para pesquisar a respeito:

    Relacionamentos entre tabelas

    Felipe, há necessidade de duas tabelas?
    Aparentemente todos os campos poderiam estar em uma única tabela, não?
    avatar
    cleverson_manaus
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 891
    Registrado : 23/09/2011

    Re: Dúvida relacionamento de tabelas

    Mensagem  cleverson_manaus em 11/2/2018, 01:35



    Concordo plenamente, dei apenas um pontapé inicial para a situação do colega.

    Também gosto de montar as tabelas dessa forma, um campo tipo número inteiro longo para chave primária.

    Ótimo link sobre sobre os relacionamentos.


    Abraços,


    .................................................................................
    [Você precisa estar registrado e conectado para ver esta imagem.]

    "É fazendo que se aprende a fazer aquilo que se deve aprender a fazer."(Aristóteles)
    - Dúvida resolvida!!! Marcar o tópico como resolvido!!!

    felipe323
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 7
    Registrado : 18/05/2015

    Re: Dúvida relacionamento de tabelas

    Mensagem  felipe323 em 15/2/2018, 11:35

    Agradeço aos que tentaram me ajudar !

    Eu não posso colocar como chave primária porque nessa mesma tabela já tenho uma outra chave primaria fazendo uma outra ligação.

    Eu poderia sem problemas botar tudo na mesma tabela. O problema é : Como eu poderia fazer com que este campo seja automático?

    No excel eu faço assim :

    =SE(E$13=2005;"-";SE(E$13=2006;"-";SE(E$13=2007;"-"Wink))

    No acess preciso como acima de forma que ele preencha o código do livro.

    Exemplo de como seria no excel :

    =SE(codigobarras=123456;"Português";SE(codigobarras=11111;"InglÊs"Wink)


    OBS.: Não posso usar o ISBN. Nos livros eu tenho o código de barras e um número do livro. Código de barras eu irei ler com o leitor por isso preciso automatizar o número do livro (que não vem como codigo de barras)
    avatar
    Cláudio Más
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1276
    Registrado : 21/01/2012

    Re: Dúvida relacionamento de tabelas

    Mensagem  Cláudio Más em 15/2/2018, 12:53

    Para o campo ser preenchido automaticamente, deve existir uma tabela com o código de barras do livro e o número do livro.
    Essa seria a Tabela 2?

    Me parece redundância, você estaria preenchendo uma tabela (Tabela 1) que já teria sido preenchida anteriormente em outra tabela (Tabela 2).

    Novamente, parece que todos os campos deveriam estar em uma mesma tabela.
    Então não seria o caso de registrar o campo número do livro. Seria apenas uma busca pelo código de barras nessa tabela única, já que o número do livro já estaria registrado previamente.

    Desculpe se não entendi bem o problema.


    Última edição por Cláudio Más em 15/2/2018, 12:59, editado 2 vez(es)
    avatar
    cleverson_manaus
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 891
    Registrado : 23/09/2011

    Re: Dúvida relacionamento de tabelas

    Mensagem  cleverson_manaus em 15/2/2018, 12:58

    Para visualizar melhor sua situação, posta as tabelas envolvidas.


    Abraços


    .................................................................................
    [Você precisa estar registrado e conectado para ver esta imagem.]

    "É fazendo que se aprende a fazer aquilo que se deve aprender a fazer."(Aristóteles)
    - Dúvida resolvida!!! Marcar o tópico como resolvido!!!

      Data/hora atual: 18/10/2018, 15:35