Duvida com modelagem de banco

Pessoal estou tentando descobrir a melhor forma para modelar um banco para o seguinte problema.
Tenho um banco de dados com as tabelas abaixo, gostaria de saber qual seria a melhor forma de fazer com que os dados pudesse ser recuperados em qualquer situação(gravar, excluir etc…) e como armazenar da melhor forma os dados dos chamados_reabertos e dos chamado_fechados.
Faço uma tabela para os chamados_fechados e outra para os chamados_reabertos ?? tem como utilizar apenas um tabela ??

tb_chamados

numero_chamado
unidade
provedor
status
atendente
numero_serie
numero_fornecedor
data_chamado

tb_chamados_reabertos

numero_chamado
atendente
provedor
fornecedor
data_reabertura
hora_reabertura
status_reabertura

tb_chamados_fechados
numero_chamado
atendente
data_fechado
hora_fechado

Olhando os campos posso lhe recomendar a criação das seguintes tabelas:

chamado
unidade
provedor
atendente
fornecedor

desculpa acho que nao fui claro… na verdade eu quero armazenar apenas os chamados.

[quote=surfzera]Pessoal estou tentando descobrir a melhor forma para modelar um banco para o seguinte problema.
Tenho um banco de dados com as tabelas abaixo, gostaria de saber qual seria a melhor forma de fazer com que os dados pudesse ser recuperados em qualquer situação(gravar, excluir etc…) e como armazenar da melhor forma os dados dos chamados_reabertos e dos chamado_fechados.
Faço uma tabela para os chamados_fechados e outra para os chamados_reabertos ?? tem como utilizar apenas um tabela ??

tb_chamados

numero_chamado
unidade
provedor
status
atendente
numero_serie
numero_fornecedor
data_chamado

tb_chamados_reabertos

numero_chamado
atendente
provedor
fornecedor
data_reabertura
hora_reabertura
status_reabertura

tb_chamados_fechados
numero_chamado
atendente
data_fechado
hora_fechado
[/quote]

Tem como utilizar somente uma tabela, colocando uma coluna “status” na tabela. Assim, você pode padronizar, por exemplo, que o chamado com status 1 se encontra fechado, 2 reaberto, etc.

Oi surfzera,

Se vc seguir a idéia de status em uma única tabela tem que verificar se precisa de uma especie de histórico. Por exemplo:

Abre-se uma chamado hoje, fecha amanhã, reabre depois de amanhã pela manhã e fecha no mesmo dia no inicio da tarde, sendo a ssim vem a pergunta; é necessario saber o histórico (tudo o que aconteceu) deste pedido? Se precisar, acredito que vc tenha que ter uma tabela para os chamados e outra para os status (status, data, hora, motivo e etc…).

flws

sim preciso saber o historio de todos os chamados que foram fechado e tambem dos reabertos…

acho que pode ser assim

CHAMADO(id, numero, status_atual, unidade, provedor, fornecedor)

MOVIMENTACAO(id, id_chamado, atendente, data(dd/mm/yyyy hh:mm), tipo(aberto, fechado, reaberto))

Para cada movimentação atualize o status do chamado, isso vai facilitar suas consultas e melhorar o desempenho.

Obs.: Dependendo da quantidade dos chamados, essa tabela de movimentação deve crescer rapidamente, caso seja um requisito importante o desempenho da sua aplicação o ideal seria uma tabela para cada tipo de chamado. Penso em quantidade acima de 10 milhões de registros.