Pagina 2 di 2 primaprima 1 2
Visualizzazione dei risultati da 11 a 15 su 15
  1. #11
    Utente di HTML.it L'avatar di neida
    Registrato dal
    Feb 2005
    Messaggi
    1,478
    Originariamente inviato da cano2006
    ahhh ora si spiega tutto, su Aruba InnoDB è a pagamento ecco perchè non riuscivo ad attivarlo! Vabbè ne farò a meno. Però almeno ho imparato una cosa nuova
    DOMANDA 1) Ma in un db mysql, come si fa una chiave esterna?
    La crei nel momento stesso in cui progetti le tabelle, più o meno come hai fatto nell'esempio di prima. Come avrai potuto notare, senza l'automatismo delle foreign keys con le innodb, dovrai controllare tutto a mano, quando aggiorni o elimini dei dati relazionati fra loro.


    Originariamente inviato da cano2006
    DOMANDA 2) Se al posto di usare InnoDB e di conseguenza le fk, per prelevare i dati fra le varie tabelle usassi JOIN ?
    Le join e le foreign keys sono due cose completamente diverse. Con le prime puoi recuperare dati da tabelle relazionate fra loro, con le FK puoi gestire l'integrità referenziale dei dati.

  2. #12
    Utente di HTML.it
    Registrato dal
    Jun 2006
    Messaggi
    79
    In una tabella ho messo anche l'Id di un'altra tabella, anche questo id esterno deve essere settato come autoincrementale e chiave primaria?

  3. #13
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    595
    No, non devi fare in questo modo

    Facciamo un esempio

    Hai una tabella per gli utenti ed una tabella che indica l'elenco dei messaggi ricevuti dall'utente
    Le due tabelle saranno così

    TAbella utenti
    id (autoincrementale primary key)
    nome

    Tabella messaggi
    id (autoincrementale primary key)
    id_mittente (index)
    id_destinatario (index)
    messaggio

    In pratica "id_mittente" e "id_destinatario" sono le due "fk" che puntano alla tabella utenti
    Mettendo il caso di avere 2 utenti (pippo e pluto) con pippo che ha inviato 2 messaggi a pluto e pluto che ne ha inviato 1 a pippo avrai questa situazione

    Tabella utenti
    id - nome
    1 - pippo
    2 - pluto

    Tabella messaggi
    id - id_mittente - id_destinatario - messaggio
    1 - 1 - 2 - Messaggio da pippo a pluto numero 1
    2 - 2- 1 - Messaggio da pluto a pippo numero 1
    3 - 1 - 2 - Messaggio da pippo a pluto numero 2

  4. #14
    cerca un file che si chiama "my" e commenta la riga che dice skip innodb o qualcosa del genere così il tipo innodb sarà attivo. l'ho fatto dieci minuti fa

  5. #15
    Utente di HTML.it
    Registrato dal
    Mar 2001
    Messaggi
    2,043
    interessante, ottimo consiglio. Grazie

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 © 2026 vBulletin Solutions, Inc. All rights reserved.