salve, sono ancora qui per chiedere, più che il vostro aiuto, in questo caso, un vostro punto di vista logico(naturalomente),e si tratta di un piccolissimo database.

Devo fare un progettino e mi è stato dato un documentino,dove vi è scritto cosa cercano.

Il database è sql server 2000

il documentino è :


Per ogni utente verrà creato un record di una tabella anagrafica, che conterrà i seguenti campi:



Ccm

SVS

SVJ

Nome utente

Ore lavorate



Per ogni anagrafica utente si potranno inserire n schede.

In ogni scheda dovranno essere compilati i seguenti campi:



Cluster

Azione

Ore

Data

Note



Le principali statistiche che vorranno avere da questo db sono:

1)

- In base al svj di appartenenza che valore ha il cluster del singolo utente

Es. svj Elisa

Ut1 = cluster0

Ut2 = cluster0

Ut3 = cluster1

..

Utn = clusterx



2) avanzamento cluster… quindi poter evidenziare in un range di date chi ha fatto un avanzamento di cluster



io l'ho progettato così:


--------------------------------------------------------------------------------

Tabella Anagrafica_UT

IDUtente primarykey not null char(16) ->CodiceFiscale
CCM char(50) not null
SVS char(50) not null
SVJ char(50) not null
Nomeutente char(50) not null
Ore Lavorate decimal (3,1) not null;


--------------------------------------------------------------------------------

Tabella SCHEDA_UT(relazione uno a molti con la tabella Anagrafica_UT)

ID_SCHEDA int primarykey not null
Cluster int not null
Azione char(50) not null
Ore int not null
Data datetime not null
Note char(2000)


--------------------------------------------------------------------------------


Tabella CLUSTER_UT(relazione uno a uno con la tabella SCHEDA_UT)
idcluster int primarykey not null
descrizione char(100) null


--------------------------------------------------------------------------------

QUalcuno mi ha detto che non è corretta questa progettazione fatta così.
Io sono convinto cheva bene.



Grazie