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

    errore mysql su inserimento da php

    sto facendo uno script che riceve dei dati da un form e li carica su un db.
    il problema è che un campo può anche essere nullo, e nel db questo campo viene salvato come chiave esterna in una tabella.

    diciamo che c'è quindi un associazione parziale, in quanto non in tutte le "richieste" c'è un "luogo", potrebbe non essere inserito.

    Beh, non so come gestire questa cosa, visto che mi viene questo errore

    Cannot add or update a child row: a foreign key constraint fails (`seap/richieste`, CONSTRAINT `richieste_ibfk_1` FOREIGN KEY (`id_oggetto`) REFERENCES `oggetti` (`id_oggetto`) ON DELETE CASCADE ON UPDATE CASCADE)

  2. #2
    mmm devi mostrarmi la struttura delle tabelle perché ti possa dire, ma se non sbaglio è perché la Foreign Key non può essere null (quando hai creato la tabella hai inserito la clausola NOT NULL sulla FK).

    Comunque la constraint che fallisce non è sulla tabella "richieste" ma su quella "oggetti".
    I DON'T Double Click!

  3. #3
    si scusa è stato un errore mio...
    l'errore è questo

    Cannot add or update a child row: a foreign key constraint fails (`seap/richieste`, CONSTRAINT `richieste_ibfk_5` FOREIGN KEY (`id_luogo`) REFERENCES `luoghi` (`id_luogo`) ON DELETE CASCADE ON UPDATE CASCADE)


    in pratica in richieste ho un campo id_luogo che è chiave esterna e punta alla tabella luoghi.
    però questo campo può essere anche non inserito nel form, quindi dovrebbe poter avere valore NULL. Ho provato a modificare il db mettendo null->si (uso phpMyAdmin) ma non cambia nulla!
    se inserisco invece un luogo nel mio form l'inserimento funziona, quindi il problema è quello :sisi:

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