Visualizzazione dei risultati da 1 a 10 su 10
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2003
    Messaggi
    224

    Duplicate entry '127' for key 1

    Mi da questo errore, ma il fatto è che il campo id, primario e auto_increment è di tipo int(20).

    Nel mio database ci sono 120 tabelle identiche, tutte con il medesimo campo id, e solo in una mi da quel problema.

    Qualcuno sa spiegarmi perchè?

    Grazie.

  2. #2
    Utente di HTML.it
    Registrato dal
    Mar 2004
    Messaggi
    1,141
    Azzardo un'ipotesi...
    non è che magari ti da quell'errore, non tanto sull'id, che, da quanto ho capito è la tua chiave primaria, ma piuttosto su un campo di tipo 'unique' per esempio?

    Cioè, non è che cerchi di inserire in un campo unique un valore già presente?

    ciao

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2003
    Messaggi
    224
    Non ci sono campi unici.

  4. #4
    puoi postare il dump della tabella in questione?

    sicuro che sia INT e non TINYINT?
    Talvolta anche una persona apparentemente inutile si rivela un abile samurai dalla forza di mille uomini, dimostrando di poter rinunciare alla vita e che il suo cuore si è completamente identificato con quello del suo padrone

  5. #5
    Utente di HTML.it
    Registrato dal
    Jul 2003
    Messaggi
    224
    Ho fatto un tentativo:

    ho cancellato il campo id e l'ho ricreato senza assegnargli la chiave primaria, e funzia perfettamente.
    Come mai?

    Ora la tabella è senza chiave primaria. Posso lasciarla così?

    Grazie.

  6. #6
    funziona per il semplice fatto che non è più chiave

    una chiave la puoi inserire una sola volta in una tabella, un dato qualsiasi lo puoi inserire quante volte vuoi












    p.s. hai provato a controllare esattamente il tipo di dato?
    Talvolta anche una persona apparentemente inutile si rivela un abile samurai dalla forza di mille uomini, dimostrando di poter rinunciare alla vita e che il suo cuore si è completamente identificato con quello del suo padrone

  7. #7
    Utente di HTML.it
    Registrato dal
    Jul 2003
    Messaggi
    224
    Ti spiego meglio:

    allora, ho un archivio composto da 120 tabelle ognuna contenente dati simili (dello stesso tipo intendo). Sono record con una data. Quando questa data è scaduta, i record relativi alla data scaduta, vengono cancellati dalla tabella in questione e scritti su una che si chiama vecchi_dati.
    E' proprio quando cerco di scriverli in questa che si verifica l'errore. La cosa che fa andare fuori di testa è che mi da l'errore solo con una delle 120 tabelle (tutte assolutamente identiche).

    io non gli invio il campo id. Per cui non capisco perchè mi deve dare un errore su quel campo.

    Spero di essermi spiegato.

  8. #8
    se nel fare l'inserimento tu non gli invii l'id da inserire e a 127 si blocca vuol dire che la tabella non ha un INT come id ma un TINYINT.

    puoi postare parte del dump della tua tabella così verifichiamo?
    Talvolta anche una persona apparentemente inutile si rivela un abile samurai dalla forza di mille uomini, dimostrando di poter rinunciare alla vita e che il suo cuore si è completamente identificato con quello del suo padrone

  9. #9
    Utente di HTML.it
    Registrato dal
    Jul 2003
    Messaggi
    224
    Ora che ho tolto la chiave primaria è:

    `id` int(20) NOT NULL default '0',

  10. #10
    Utente di HTML.it
    Registrato dal
    Jul 2003
    Messaggi
    224
    e prima era così:

    `id` int(20) unsigned NOT NULL auto_increment,
    PRIMARY KEY (`id`)

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.