Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 22

Discussione: Progetto Database

  1. #1
    Utente di HTML.it L'avatar di deleted_id_48586
    Registrato dal
    Nov 2002
    Messaggi
    1,732

    Progetto Database

    Ciao a tutti,

    in questi giorni, con molta umiltà, stavo cercando di implementare la struttura di un Database per un sito che amministro da un pò di tempo che per ora è totalmente statico.

    Il sito è www.lalocomotivaweb.it

    quello che volevo fare era creare un DB che archiviasse le numerose informazioni sui corsi principalmente.

    Pur non essendo certo difficile ho notato che dai dati presenti si venivano a creare moltre relazioni M:N (molti a molti)

    Ora ho "risolto" in questo modo (nel file allegato).

    Volevo sapere, alla luce di quello che potete vedere da sito, se il DB regge oppure ci sono errori macroscopici o mancanze.

    Allego anche uno screenshot.

    Grazie a tutti coloro che vorranno darmi un aiuto o suggerimento.

    Scusate ma è il mio primo progetto.


  2. #2
    Utente di HTML.it L'avatar di deleted_id_48586
    Registrato dal
    Nov 2002
    Messaggi
    1,732
    l'allegato

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2005
    Messaggi
    26
    up

  4. #4
    Utente di HTML.it L'avatar di luca200
    Registrato dal
    Apr 2002
    Messaggi
    4,120
    Dovresti spiegare cosa intendi per corso, ciclo, programma e livello, e in che modo i livelli interagiscono con i livelli_informatica.

  5. #5
    Utente di HTML.it L'avatar di deleted_id_48586
    Registrato dal
    Nov 2002
    Messaggi
    1,732
    Allora innanzi tutto grazie per l'interessamento.

    Corso: identificazione generica dei vari programmi, es:
    Corso di inglese di 1° livello (base)
    Corso di inglese di 2° livello (medio)
    ecc.

    CORSI:
    Nella quasi totalità dei casi hanno informazioni generiche quale il costo, la durata in mesi, il metodo di insegnamento utilizzato, il luogo di svolgimento (ovvero le aule e non le palestre ad esempio.) e sono comuni per tutti i livelli.

    LIVELLI:
    Ovvero una delle varie parti del Corso (se inteso come categoria)
    In inglese potrebbe essere inteso in base al livello di insegnamento mentre in informatica in base al software studiato, in ginnastica se per adulti o per ragazzi ecc.

    PROGRAMMA:
    è la mega tabella di collegamento che ho creato per identificare in modo univoco le relazioni:
    un programma può essere

    ProgrammaID
    Corso: INGLESE
    Livello: Livello 1
    Giorno: martedì
    Orario da: 18.00
    Orario a: 20.00
    Luogo: Aule corsi
    Ciclo: dal 07/10/2006 al 04/02/2007

    il ciclo è importante per esempio perchè uno stesso identico corso potrebbe essere fatto più avanti ma sempre nello stesso posto allo stesso giorno con gli stessi orari ecc.
    in questo modo ho un record PROGRAMMAID "univoco".

    CICLI:
    Una sorta di periodo di svolgimento, lo hanno solo alcuni corsi, ed immaginatelo come i trimestri i scuola.
    Dal DATA al DATA

    LIVELLI_INFORMATICA
    Lo impostata solo come sotto-tabella dei corsi di informatica che in base al livello studiato cambiano in durata e costi in quanto non esiste un valore univoco di costo e durata come per gli altri corsi questo per evitare di aver nella tabella LIVELLI dei campi quasi sempre vuoti come "numero lezioni", "numero ore", "costo" associate solo ai corsi di informatica.

  6. #6
    Utente di HTML.it L'avatar di luca200
    Registrato dal
    Apr 2002
    Messaggi
    4,120
    il mod ha rimosso l'immagine, così non ci posso più fare niente......

  7. #7
    Utente di HTML.it L'avatar di deleted_id_48586
    Registrato dal
    Nov 2002
    Messaggi
    1,732
    Si si gli ho detto io di rimuoverla perchè spaginava il layout, scusate ora la rimetto subito.
    Immagini allegate Immagini allegate

  8. #8
    Utente di HTML.it L'avatar di luca200
    Registrato dal
    Apr 2002
    Messaggi
    4,120
    Faccio fatica a cogliere il senso della tabella cicli rispetto alla tabella programmi.
    Comunque, in generale, il db non mi sembra mal strutturato. Magari è ridondante il dato del corso nella tabella programmi, visto che il livello sarebbe sufficiente a identificarlo.

  9. #9
    Utente di HTML.it L'avatar di deleted_id_48586
    Registrato dal
    Nov 2002
    Messaggi
    1,732
    In che senso fai fatica a cogliere il senso della tabella cicli rispetto alla tabella programmi?

    Ti spiego:
    Il senso è che uno stesso identico corso per: luogo di svolgimento, livello, giorno/i, orario ecc. potrebbe svolgersi prima in un certo periodo e poi essere riproposto sempre nello stesso anno sociale.

    es:

    INGLESE
    Livello1
    Martedì
    18.00 - 20.00
    ...

    prima tenuto dal 10/10/2006 al 03/02/2007

    e poi (lo stesso identico) dal 04/02/2007 al 10/06/2007

    tipo trimestri, quadrimestri ecc. della scuola.

    N.B.
    In realtà non sono molti i corsi che hanno cicli quindi non sò se possa valer la pena di avere una tabella separata.

    Per il fatto del CorsoID nella tabella PROGRAMMI forse hai ragione è ridondante e livelloID dovrebbe essere sufficiente.

    Per il primo punto circa CICLI-PROGRAMMI alla luce di quello che ho appena detto cosa pensi?

    Dici che forse è meglio togliere la tabella e mettere le informazioni sul ciclo nella tabella programmi ridondando un pò i dati ma semplificando la struttura?

    Grazie ancora.

  10. #10
    Utente di HTML.it L'avatar di deleted_id_48586
    Registrato dal
    Nov 2002
    Messaggi
    1,732
    Inoltre ho un altro dubbio:

    Come vedi la quota di partecipazione è inserita nella tabella CORSO in quanto è comune per tutti i livelli (generalmente) ma nel caso dei corsi di informatica questa è a livello di singolo programma in quanto il corso di WORD costa diverso da quello di WINDOWS.

    Ho quindi due campi uguali in due tabelle diverse e non vorrei che creasse problemi.

    Il fatto è che non mi va di aggiungere il costo a livello di singolo programma perchè avrei una marea di dati ridondanti.

    Non sò cosa si debba fare in questi casi.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.