Visualizzazione dei risultati da 1 a 6 su 6

Discussione: Problema Foreign Key

  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2008
    Messaggi
    42

    Problema Foreign Key

    Ciao ragazzi,
    ho un problema con mysql....
    devo aggiungere a una tabella una chiave esterna...ho visto che le tabelle devono essere innodb e per fortuna vengono create di default comunque ho verificato che lo siano,poi ho creato l'indice sul'attributo che dovrà essere la chiave esterna e che è anche la chiave primaria e poi ho fatto così:

    ALTER TABLE film
    ADD CONSTRAINT film
    FOREIGN KEY(NomeFilm)
    REFERENCES film(Titolo)
    ON UPDATE CASCADE
    ON DELETE CASCADE

    ....e mi esce error 1452 cannot add or update a child row: a foreign key constraint fails
    ('cinema/#sql-ccc_2',constraint 'film' ......)

    Innoltre ho visto che c'era da modificare il my-innodb-heavy-4G.ini e ho fatto così:
    innodb_data_file_path = ibdata1:300M
    innodb_data_home_dir = c:\ibdata
    innodb_log_group_home_dir = c:\iblogs

    però l'ho fatto dopo che ho creato le tabelle non all'installazione.....


    COSA PUO' ESSERE!!!!

  2. #2
    Utente di HTML.it
    Registrato dal
    Jan 2008
    Messaggi
    42
    ....nessuno a mai creato chiavi esterne con mysql????..... mi sembra strano..

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2006
    Messaggi
    170
    Una domanda forse banale ci sono dati nelle tabelle?
    Può essere che in qualche tabella ci sono dati che non rispettano questa relazione??
    Perchè non provi e mettere queste chiavi alla creazione della tabella???

  4. #4
    Utente di HTML.it
    Registrato dal
    Jan 2008
    Messaggi
    42
    Mi correggo la query è così, avevo scritto table film invece di spettacoli ma l'errore è sempre lo stesso:

    ALTER TABLE spettacoli
    ADD CONSTRAINT film
    FOREIGN KEY(NomeFilm)
    REFERENCES film(Titolo)
    ON UPDATE CASCADE
    ON DELETE CASCADE

    In effetti la tabella è già popolata però siccome è poca roba ho verificato che il NomeFilm in spettacoli esistano in film(Titolo).....comunque provo a rifarla....

  5. #5
    Utente di HTML.it
    Registrato dal
    Jan 2008
    Messaggi
    42
    Mi correggo la query è così, avevo scritto table film invece di spettacoli ma l'errore è sempre lo stesso:

    ALTER TABLE spettacoli
    ADD CONSTRAINT film
    FOREIGN KEY(NomeFilm)
    REFERENCES film(Titolo)
    ON UPDATE CASCADE
    ON DELETE CASCADE

    In effetti la tabella è già popolata però siccome è poca roba ho verificato che il NomeFilm in spettacoli esistano in film(Titolo).....comunque provo a rifarla....

  6. #6
    Utente di HTML.it
    Registrato dal
    Jan 2008
    Messaggi
    42

    RISOLTO

    Grazie Valerio
    l'ho rifatta da capo e funzione!!!

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.