Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    Errore relativo a Foreign Keys (errno 150)

    Buongiorno a tutti.

    Nella creazione di un db, procedo in questa maniera.

    CREATE TABLE tabellaA {
    id VARCHAR (20) NOT NULL PRIMARY KEY
    }

    CREATE TABLE tabellaB {
    fk_id VARCHAR (20) NOT NULL,
    FOREIGN KEY (fk_id) REFERENCES tabellaA(id)
    }

    CREATE TABLE tabellaC {
    fk_id VARCHAR (20) NOT NULL,
    FOREIGN KEY (fk_id) REFERENCES tabellaB(fk_id)
    }

    In pratica, possono esistere N record di TabellaB riferiti a un singolo record di TabellaA, e possono esistere N record di TabellaC riferiti a un singolo record di TabellaC.

    Non riesco a creare tabelaC.

    Questo il log:

    ERROR 1005 (HY000): Can't create table 'my_db.tabellaC' (errno: 150)

    Sto sbagliando qualcosa in merito alle foreign keys?

  2. #2
    In teoria no, in pratica ci dev'essere un errore. Ma se vuoi aiuto devi postare il codice che usi davvero...
    STK/Unit: Unit Test framework per MariaDB
    http://stk.wikidot.com/stk-unit

  3. #3
    Trovato! Almeno credo...

    fk_id di tabellaB deve essere chiave primaria...

  4. #4
    E lo scrivi qui prima di provare???
    Comunque deve essere chiave primaria o indice, sì.
    STK/Unit: Unit Test framework per MariaDB
    http://stk.wikidot.com/stk-unit

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.