PDA

View Full Version : [mysql] caricamento da file fallito


yoghi87
27-03-2009, 12:53
Salve, sapete spiegarmi perchè ricevo questo errore da mysql?

mysql> load data local infile '/var/lib/mysql/prove/file_testo/tab_proprietà' into table proprietà;
ERROR 1452 (23000): Cannot add or update a child row: a foreign key constraint fails (`prove/proprietÃ`, CONSTRAINT `proprietÃ_ibfk_1` FOREIGN KEY (`cod_proprietario`) REFERENCES `proprietari` (`cod_proprietario`) ON DELETE NO ACTION ON UPDATE CASCADE)


Altri file identici in altre tabelle costruite in modo identico vengono caricati questo no...

yorkeiser
27-03-2009, 12:58
Da quello che posso intuire, stai cercando di inserire dei valori in una colonna che però è in chiave esterna con un'altra tabella (proprietari). Se in quella colonna hai dei valori che non sono appunto nella tabella proprietari, non puoi inserirli.
Ad esempio, se vuoi inserire 'Mario', 'Mario' deve essere presente anche nella tabella proprietari, alla colonna cod_proprietario

yoghi87
27-03-2009, 14:34
è si è propio quello che non capisco il la tabella propietari che ho già creato e popolato a come chiave primaria cod_propietari che deve essere importata nella tabella propietà con altri dati...ma non và, nella tabella propietà al momento della creazione ho specificato che cod_proprietario è foreign key importato da propietari...:muro:

yorkeiser
27-03-2009, 15:00
Ad occhio, nel file che stai caricando (tab_proprieta) ci sono dei valori che sono assenti nella tabella proprietari.
Ad esempio, se nel file hai 'Mario', ma 'Mario' non è presente nella tabella dei proprietari sulla colonna in chiave, non puoi caricarlo.

yoghi87
27-03-2009, 20:10
A123456X 00011 1998/12/30 \N
B256787Y 00003 1989/09/21 1998/12/23
C76589AG 00005 1998/08/13 \N
C78905GT 00004 1999/06/15 \N
C845905Z 00009 1995/04/11 \N
CFT346VB 00007 1995/01/12 \N
D238765W 00011 1997/08/12 1999/01/12
DD4567XX 00003 1997/06/05 1998/07/06
DD4567XX 00004 1998/07/06 \N
DGH789JC 00005 1995/10/05 \N
DH79567H 00006 1998/08/06 \N
DH79567H 00010 1995/03/03 1998/08/06
ERG567NM 00001 1997/12/18 \N
F96154BH 00002 1992/03/08 1997/03/10
FGH673FV 00008 1998/08/09 1998/12/31
FGH673FV 00010 1999/01/01 \N
XCH56GJK 00003 1998/09/04 \N
XF5789GY 00004 \N \N


cod_proprietario | cognome | nome | indirizzo | provincia |
+------------------+----------+----------+-----------------------+-----------+
| 00001 | Rossi | Giovanni | Via dei pini, 23 | RM |
| 00002 | Bianchi | Mario | Via degli ontani, 45 | PI |
| 00003 | Verdi | Claudio | Via delle betulle, 34 | FI |
| 00004 | Martini | Luigi | Via Dante, 10 | MI |
| 00006 | Penna | Maria | Via Livornese, 34 | PI |
| 00007 | Agostini | Giacomo | Via Cavour, 2 | RM |
| 00008 | Giannoni | Paola | Via Brennero, 5 | BZ |
| 00009 | Volpi | Adriana | Via Montanare, 78 | FI |
| 00010 | Alfieri | Angelo | Piazza Paganini, 1 | FI |
| 00011 | Chiti | Lorenzo | Corso Italia, 20 | BG |
| 00012 | Pierini | Silvia | Via Bixio, 4 | RM |
+------------------+----------+----------+-----------------------+-----------+



allora scusate se non sono allineati ma non importa... il primo è il file con i dati della tabella propietà in cui c'è la chiave importata cod_proprietario, il secondo è la tabella dei proprietari...
e secondo me non ci sono errori ma non riesco a caricare il file...

yoghi87
27-03-2009, 20:31
risolto manca il 00005...

Grazie di tutto...:D