Come organizzare Indirizzi,città...

di GM02 il
15 risposte
Salve a tutti.
Vorrei creare un database formato da:
- tabella "Societa"
- tabella "Indirizzo"

Vorrei far corrispondere l'indirizzo della societa con la societa stessa.
Ma non so come fare per organizzare la tabella Indirizzo, con i campi provincia stato, via, numero civico...
Come posso fare?
Grazie mille.

15 Risposte

  • Non ho capito... perchè 2 Tabelle...?
    Quanti indirizzi potrà mai avere una società...? Penso al massimo 2... ha senso fare 2 Tabelle...?
  • @Alex ha scritto:


    Non ho capito... perchè 2 Tabelle...?
    Quanti indirizzi potrà mai avere una società...? Penso al massimo 2... ha senso fare 2 Tabelle...?
    Si, in quel senso hai perfettamente ragione. Ma il mio problema è che ho molte aziende presenti nello stesso territorio, perciò nella tabella "Societa" gli indirizzi sarebbero quasi uguali per ogni societa, e quindi campi come provincia, stato, regione, sarebbero continuamente ripetuti.
    Grazie per aver risposto.
  • Non importa, fanno parte dell'anagrafica.
    Cosa ti cambierebbe se facessi le 2 Tabelle...? NULLA
    Vorresti fare una relazione in 3° FN con 3 Tabelle per risparmiare "V. Carlo Poma"...?
    Non credo che la normalizzazione faccia riferimento agli Attributi di questo tipo... fai una riflessione più tecnica e meno "scolastica".
  • La normalizzazione di un database e' sempre una cosa giusta da fare, ma non e' una regola ASSOLUTA.
    Un po' di DENORMALIZZAZIONE (duplicazione di campi) ci puo' anche stare, se non e' eccessiva.
  • @Alex ha scritto:


    Non importa, fanno parte dell'anagrafica.
    Cosa ti cambierebbe se facessi le 2 Tabelle...? NULLA
    Vorresti fare una relazione in 3° FN con 3 Tabelle per risparmiare "V. Carlo Poma"...?
    Non credo che la normalizzazione faccia riferimento agli Attributi di questo tipo... fai una riflessione più tecnica e meno "scolastica".
    Dici che sarebbero abbastanza 2 tabelle in questo caso? Perchè pensavo che me ne serviviano molte di più, tipo una per provincia, una per citta, una per via, una per stato.....
    Ne basterebbero due?
    Scusa se per te sono domande troppo scontate, ma sono veramente un principiante
  • Io non ho capito tanto la questione dei 2 indirizzi. In linea generale ci vedrei la seguente struttura tabelle:
    Aziende
    IDAzienda (PK)
    NomeAzienda
    Indirizzo (solo la via e il numero civico)
    IDCittà (numerico)(FK)

    Città
    IDCittà (PK)
    Città
    CAP
    Provincia
    Regione
    Stato

    Relazione Città.IDCittà uno-a-molti Aziende.IDCittà

    Questa soluzione è la più "efficente". L'idea di avere le tabelle:
    Stati uno-a-molti Regioni uno-a-molti Province uno-a-molti Città si può fare...risulta un tantino farraginosa per Access da gestire.
  • GM02 ha scritto:


    Dici che sarebbero abbastanza 2 tabelle in questo caso? Perchè pensavo che me ne serviviano molte di più, tipo una per provincia, una per citta, una per via, una per stato.....
    Ne basterebbero due?
    Scusa se per te sono domande troppo scontate, ma sono veramente un principiante
    Dico che ne basta 1 sola e quello che chiedi è inutile...!!
    Le cose che hai detto dopo NON SI POSSONO SENTIRE, se sei principiante devi studiare qualche cosa di serio prima altriumenti si sprecano domande e risposte.
  • @Alex ha scritto:


    GM02 ha scritto:


    Dici che sarebbero abbastanza 2 tabelle in questo caso? Perchè pensavo che me ne serviviano molte di più, tipo una per provincia, una per citta, una per via, una per stato.....
    Ne basterebbero due?
    Scusa se per te sono domande troppo scontate, ma sono veramente un principiante
    Dico che ne basta 1 sola e quello che chiedi è inutile...!!
    Le cose che hai detto dopo NON SI POSSONO SENTIRE, se sei principiante devi studiare qualche cosa di serio prima altriumenti si sprecano domande e risposte.
    Hai ragione, non volevo disturbare nessuno, ma avevo bisogno veramente di una mano, sapresti consigliarmi dove reperire qualcosa di serio da studiare? Grazie ancora.
  • Intanto potresti iniziare a dare un occhiata al database di esempio northwind di access.
    Ma fammi capire, è un problema solo di logica e di struttura, o non sai proprio collegare le tabelle ed i vari oggetti a livello tecnico e di codice?
    Perché c è un enorme differenza tra le cose.
  • fratac ha scritto:


    Intanto potresti iniziare a dare un occhiata al database di esempio northwind di access.
    Ma fammi capire, è un problema solo di logica e di struttura, o non sai proprio collegare le tabelle ed i vari oggetti a livello tecnico e di codice?
    Perché c è un enorme differenza tra le cose.
    Ciao fratac, grazie del consiglio.
    Si tratta per lo più di un problema legato alla struttura logica del DB. Infatti il mio problema è che le societa che devo gestire sono ubicate sulla stessa via/e, e quindi mi dava fastidio vedere così tanti doppioni. Volevo solo trovare un modo più efficace di gestire il DB. (ovviamente potrei tenerlo così com'è, ma mi piace cercare sempre una possibile miglioria nelle cose). Grazie ancora.
  • @Alex ha scritto:


    Quanti indirizzi potrà mai avere una società...? Penso al massimo 2... ha senso fare 2 Tabelle...?
    Dipende dal tipo di azienda. Comunque io considero Sede Legale, Sede Amministrativa e Sede Produttiva (potrebbero essere molteplici le sedi produttive).
    La sede legale è obbligatoria (si ricava dalla CCIAA), la sede produttiva in genere compare in CCIAA mentre la sede amministrativa dipende dall'organizzazione dell'azienda (e non compare in CCIAA, almeno che io sappia).
    Esistono aziende che delegano la gestione amministrativa addirittura ad altre aziende (magari del gruppo e magari anche in altra nazione) come esistono aziende la cui gestione amministrativa è svolta direttamente dalla sede produttiva. La sede amministrativa in genere indica l'indirizzo di spedizione delle fatture che può essere quindi diverso dalla sede legale (che magari è presso il commercialista) e dal sito produttivo. Con l'introduzione della fatturazione elettronica potrebbe anche essere superflua anche se potrebbe essere la sede a cui inoltrare comunicazioni scritte in merito ai pagamenti.

    Poi per molte aziende le 3 sedi corrispondono ...
  • Consiglio una tabella separata per le sedi aziendali. Concordo con la riflessione di @max.riservo.
  • Anche secondo me la via da seguire è quella della separazione delle varie sedi quindi.
    Creerei una tabella dove inserire i dati della sede legale, con i vari dati di riferimento, tipo indirizzo, recapito telefonico, recapito di riferimento e gli altri dati di interesse.
    Poi creerei una tabella uno a molti denominata altre sedi o sedi distaccate, dove indicherei tutte le altre tipologie di sedi collegata con la tabella madre della sede principale o sede legale.
    Per quanto riguarda invece il ripetersi di dati tipo via, città, stato, cap ed altre cose che si ripetono, creerei delle tabelle separate non collegate con le relazioni, ma da usare solo come fonte dati, dove nella tabella dell'anagrafica delle società verrebbe inserito solo la chiave esterna.
    Non verrebbero ripetuti i dati, ma solo le chiavi esterne e si eviterebbe di inserire manualmente sempre gli stessi dati e si eviterebbero i comuni errori di digitazione.
  • Io farei una riflessione... rileggendo il 1° post dell'autore.

    La questione di 1 tabella o 2 tabelle ha sicuramente un senso, in una logica 1-M ma questo ragionamento che va calato nell'analisi strutturale delle esigenze specifiche non ha molto a che vedere con la perplessità esposta dall'OP.

    Poi possiamo pure parlare delle N Tabelle possibili per Riferimenti telefonici e-mail ecc... ma a mio avviso l'argomento originale era altro, ovvero una mal interpretazione della NORMALIZZAZIONE.

    Io farei un passo indietro e mi trovo a condividere le considerazioni di Miglciorabile che reputo aderenti al tema originale.
Devi accedere o registrarti per scrivere nel forum
15 risposte