Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2008
    Messaggi
    77

    Aiuto creazione DB

    Ciao.
    Sto realizzando un sito e mi servirebbe una mano con la creazione del db.

    il sito è per un canile, e prevede una lista di cani con i vari attributi (nome, descrizione, taglia, ecc...) e una fotogallery dei cani, dove ogni cane puo avere una o piu foto.

    La struttura piu logica che mi è venuta in mente è di creare due tabelle:

    una CANI che avrà un ID e altri attributi

    e poi una FOTO che avrà un ID, il path e il nome della foto ed ovviamente il cane a cui è associata.

    Volevo quindi relazionare le due tabelle inserendo un campo id_cane nella tabella foto che referenzia la tabella cani.
    Secondo voi va bedne cosi?

  2. #2
    Essendo un junior come te io comincerei a fare delle prove pratiche tanto a creare un db, creare due tabelle e metterci un po' di dati sopra ti costa poco.
    Tu hai...
    CANE{id_cane,nome, descrizione, taglia, altro}
    FOTO{id_foto,path,nome}

    ...e io penso che ti serva una terza tabella per relazionare le due!
    GALLERIA{id_cane,id_foto}

    Cmq sono curioso di sentire i pareri delle persone piu' junior di me!

  3. #3
    Utente di HTML.it
    Registrato dal
    Jan 2008
    Messaggi
    77
    per la terza tabella, l'ho esclusa perchè credo basti usare il join, ecco perchè metto id_cane anche nella tabella foto

  4. #4
    Si pero' credo che avrai delle foto che sono condivise da piu' cani, o no?

  5. #5
    Utente di HTML.it
    Registrato dal
    Jan 2008
    Messaggi
    77
    mmm perchè scusa?
    ogni foto ritrae un cane, quindi ogni cane può avere piu foto ma non viceversa!

    ah, poi avrei un'altra domanda, ma forse riguarda piu il php...cmq chiedo:

    diciamo che io ho l'ID_CANE che è un campo auto increment del db. nel momento in cui inserisco un nuovo cane e voglio inserire delle foto, come faccio a recuperare l'ID_CANE appena creato?

  6. #6
    Utente di HTML.it
    Registrato dal
    Jan 2008
    Messaggi
    77
    L'ultimo punto dovrebbe risolversi con la funzione: mysql_insert_id ()

  7. #7
    Ciao,

    come indicato nel regolamento è obbligatorio specificare nel titolo la piattaforma utilizzata per il database, in questo caso, dai post, mi pare di capire che si parli di MySQL.

    Per questa volta sistemo io il titolo, ma più attenzione gentilmente.

    Grazie

    PS: sebbene sia possibile recuperare l'ultimo id inserito tramite SQL, ti consiglio di farlo tramite le funzioni del linguaggio di programmazione che stai usando ed eventualmente per di aprire un thread nell'apposita sezione del forum per sapere quali sono le funzioni.
    The fastest Redis alternative ... cachegrand! https://github.com/danielealbano/cachegrand

  8. #8
    Utente di HTML.it
    Registrato dal
    Jan 2008
    Messaggi
    77
    Originariamente inviato da daniele_dll
    Ciao,

    come indicato nel regolamento è obbligatorio specificare nel titolo la piattaforma utilizzata per il database, in questo caso, dai post, mi pare di capire che si parli di MySQL.

    Per questa volta sistemo io il titolo, ma più attenzione gentilmente.

    Grazie

    PS: sebbene sia possibile recuperare l'ultimo id inserito tramite SQL, ti consiglio di farlo tramite le funzioni del linguaggio di programmazione che stai usando ed eventualmente per di aprire un thread nell'apposita sezione del forum per sapere quali sono le funzioni.
    scusami, sarò piu attento in futuro.

    Cmq si parlava di MySql

  9. #9
    Originariamente inviato da kurtdc
    mmm perchè scusa?
    ogni foto ritrae un cane, quindi ogni cane può avere piu foto ma non viceversa!
    Ho letto attentamente e penso che hai ragione. Ne bastano due allora con la relazione:
    1_cane --> N_foto!
    CANE{id_cane,nome, descrizione, taglia, altro}
    FOTO{id_foto,id_cane,path,nome}

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.