Ir para conteúdo


Revista PROGRAMAR - Edição 44 (Fevereiro 2014): Download já disponível!

- - - - -

Criar uma Relação


  • Por favor inicie sessão para responder
3 respostas a este tópico

#1 Paulo_Rocha

Paulo_Rocha

    void

  • Membro
  • PipPip
  • 88 mensagens

Publicado 13 de Julho de 2012 - 08:55

Boas Pessoal,

Eu tenho uma base de dados em access e sou inciante, necessito de saber se é possivel,
tendo uma tabela Projeto com:

cliente
projeto
desenhador
datainicio
datafim
tempo
EstadoEncomenda

E outra tabela Encomendas com:

Cliente
n_projeto
projeto
dataentrega
tempototal
tempoproducao
estado


Na coluna estado podemos ter 2 opções Aberta ou Fechada


Eu queria relacionar o EstadoEncomenda com estado, relativamente a cada projecto.

Para quando consultar a tabela projeto saber qual o estado daquel projeto.

Alguem me pode ajudar?

Cumprimentos

Paulo Rocha

#2 vbtipo

vbtipo

    Try-Catch User

  • Membro
  • PipPipPipPip
  • 436 mensagens

Publicado 13 de Julho de 2012 - 16:38

Tens a base de dados confusa e reduzida demais para puderes fazer alguma coisa, no minimo deves de ter 3 tabelas: Cliente, desenhador, projecto.

1.ª tabela Cliente
Numero Cliente
etc

2.ª Desenhador
Numero do desenhador
etc

3.ª Projecto
Numero do projecto
Numero do desenhador
Numero do cliente

#3 Paulo_Rocha

Paulo_Rocha

    void

  • Membro
  • PipPip
  • 88 mensagens

Publicado 13 de Julho de 2012 - 17:21

Vou tornar a coisa mais simples.

imagina que tenho uma base de dados com 2 tabelas
PROJETOS E ENCOMENDAS.

Na tabela ENCOMENDAS tenho:

Cliente
Projeto
Estado "estado a encomenda "Aberta ou Fechada"  "


Na tabela PROJETOS tenho:

Desenhador
Cliente
Projeto
Estado *

Ésta coluna Estado Da tabela PROJETOS

Eu quero que seja Actualizada Automáticamente. Quero que quando modificado o estado De uma determinada encomenda na tabela ENCOMENDAS
relativamente a um dado projeto.

Que Na tabela PROJETOS, o estado seja tambem alterado em todas as linhas que está presente esse projeto.

Exemplo:

Inicialmente quando criado.

ENCOMENDAS
Cliente   Projeto     Estado

XX YY   Aberto
ZZ        HH   Aberto

PROJETOS
Desenhador    Cliente   Projeto     Estado

Paulo   XX YY   Aberto
Filipe ZZ        HH   Aberto
Paulo   XX YY   Aberto
Filipe XX YY   Aberto


Em seguida quero Fechar a encomenda  do projeto YY.
E faço isto:


ENCOMENDAS
Cliente   Projeto     Estado

XX YY   Fechado
ZZ        HH   Aberto


o que eu queria é que o access automáticamente Altera-se todas as linhas que tem o projeto YY na tabela PROJETOS, para Fechado.


PROJETOS
Desenhador    Cliente   Projeto     Estado

Paulo   XX YY   Fechado
Filipe ZZ        HH   Aberto
Paulo   XX YY   Fechado
Filipe XX YY   Fechado



É possivel fazer isto?

Com Relações?
Consultas?
Macros?

#4 pmg

pmg

    Unsigned User

  • Moderador
  • PipPipPipPipPipPip
  • 3688 mensagens

Publicado 13 de Julho de 2012 - 18:19

 Paulo_Rocha, em 13 de Julho de 2012 - 17:21, disse:

É possivel fazer isto?
Deve ser ... mas estarias a deturpar a ideia basica de ter uma base de bados em primeiro lugar.
Fazendo o que tu queres, tornas facil ter a base de dados incongruentes (o projecto pode estar ao mesmo tempo aberto e fechado). A solucao ideal e tirares a coluna de estado da tabela dos projectos.

Se quiseres ter a informacao completa actualizada, faz uma view (nao sei a nomenclatura do access)