Visualizzazione dei risultati da 1 a 9 su 9

Discussione: join tabelle

  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2004
    Messaggi
    43

    join tabelle

    Salve,

    Non riesco a risolvere un problema di logica, anzi due:

    Primo Problema
    1) Tabella_Eventi
    2) Tabella_Artisti
    3) Tipologia_Artisti

    Se è vero che un Evento può avere molti Artisti è anche vero che un'artista può aver fatto molti eventi...

    Il campo numerico che richiama l'ID della tabella correlata, dove lo metto? nella prima o nella seconda?

    Secondo Problema
    Anche l'artista una volta può essere attore, un'altra regista...
    Come richiamo con le ASP - in modo che rimanga legato all'evento - il ruolo specifico???

    se non sono stato chiaro perdonatemi...

    grazie a tutti

  2. #2
    Utente di HTML.it
    Registrato dal
    Jun 2004
    Messaggi
    43
    Se ho sbagliato forum potreste indicarmi qualche sezione più appropriata?

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2004
    Messaggi
    43
    Non abbandonatemi... mi frigge il cervello

  4. #4
    Utente di HTML.it L'avatar di diegoctn
    Registrato dal
    May 2001
    Messaggi
    2,118
    E non te lo fare friggere................dimmi i campi che hai nelle tabelle.......

  5. #5
    Utente di HTML.it
    Registrato dal
    Jun 2004
    Messaggi
    43
    subito grazie...

    Tabella Esecuzioni:
    IDEsecuzione
    Titolo
    Anno
    (ID interprete - numerico - prende l'IDInterprete dalla tabella Interpreti)-ma questo campo è uno e gli artisti possono essere più di uno quindi:
    (IDInterprete2; IDInterprete3 - se decido di metterla in questo modo)

    Tabella Interpreti:
    IDInterprete
    Nome
    Cognome
    (ID Esecuzione - numerico - prende l'IDEsecuzione dalla tabella Esecuzioni - questa è un'altra soluzione - ma le esecuzioni teoricamente sono infinite)
    ...

    Tabella Ruolo:
    IDRuolo
    Ruolo
    ?e poi ho il solito problema?
    ---

    Perchè quando in ASP impagino il record a partire dall'IDEsecuzione devo far comparire gli artisti che l'hanno fatta e per ciascuno il ruolo
    ---

  6. #6
    Utente di HTML.it L'avatar di diegoctn
    Registrato dal
    May 2001
    Messaggi
    2,118
    Puoi semplificarti la vita facendo tutto in una sola tabella:

    IdEsecuzione
    Evento
    Data
    Interprete1
    RuoloInterprete1
    Interprete2
    RuoloInterprete2
    .............
    .............
    .............

    Se questi campi li devi popolare tramite asp, fai una tabella interpreti con un campo IdInterprete così ti viene più facile l'inserimento. Nel momento di estrarre la select per il report finale fai una semplice select * from e poi giochi con i campi, senza dover ricorrere a join o altro........

  7. #7
    Utente di HTML.it L'avatar di Jupy64
    Registrato dal
    Sep 2004
    Messaggi
    1,151
    Originariamente inviato da bretzzz
    subito grazie...

    Tabella Esecuzioni:
    IDEsecuzione
    Titolo
    Anno
    (ID interprete - numerico - prende l'IDInterprete dalla tabella Interpreti)-ma questo campo è uno e gli artisti possono essere più di uno quindi:
    (IDInterprete2; IDInterprete3 - se decido di metterla in questo modo)

    Tabella Interpreti:
    IDInterprete
    Nome
    Cognome
    (ID Esecuzione - numerico - prende l'IDEsecuzione dalla tabella Esecuzioni - questa è un'altra soluzione - ma le esecuzioni teoricamente sono infinite)
    ...

    Tabella Ruolo:
    IDRuolo
    Ruolo
    ?e poi ho il solito problema?
    ---

    Perchè quando in ASP impagino il record a partire dall'IDEsecuzione devo far comparire gli artisti che l'hanno fatta e per ciascuno il ruolo
    ---
    Ciao, sinceramente non ho capito molto il tipo di collegamento che vuoi fare tra le tabelle.. comunque ci provo a spiegarti.
    Visto quanto esponi, suppongo che non sai cosa sia la normalizzazione del database...in base a questo ti sconsiglio vivamente (anche se potrebbe sembrare più semplice) la soluzione di diegoctn
    Veniamo alle tabelle, sempre che non abbia capito male!
    codice:
    Tabella Artisti:
    IDArtista
    Nome
    Cognome
    
    Tabella Ruolo:
    IDRuolo
    Ruolo
    
    Tabella Esecuzioni:
    IDEsecuzione
    Titolo
    Anno
    
    Tabella Interpreti:
    IDInterprete
    IDArtista
    IDRuolo
    IDEsecuzione
    In pratica la tabella Interpreti è quella che collega tutte le altre.. questo è un esempio a grandi linee non sapendo il tuo progetto..
    Jupy

  8. #8
    Utente di HTML.it
    Registrato dal
    Jun 2004
    Messaggi
    43
    si penso che possa andare bene.. non avevo pensato ad una tabella che raccogliesse tutti gli altri record...

    A proposito di queta cosa... mi farò sentire piùà avanti visto che già subodoro guai di script per l'inserimento di alcuni records

  9. #9
    Utente di HTML.it L'avatar di diegoctn
    Registrato dal
    May 2001
    Messaggi
    2,118
    Originariamente inviato da Jupy64
    Ciao, sinceramente non ho capito molto il tipo di collegamento che vuoi fare tra le tabelle.. comunque ci provo a spiegarti.
    Visto quanto esponi, suppongo che non sai cosa sia la normalizzazione del database...in base a questo ti sconsiglio vivamente (anche se potrebbe sembrare più semplice) la soluzione di diegoctn
    Veniamo alle tabelle, sempre che non abbia capito male!
    So che non è elegante, ma è efficace. Dopotutto il volume dei record inseriti non dovrebbe essere preoccupante...........

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.