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

    [MySql] Impedire doppio inserimento

    Buon pomeriggio, come faccio ad impedire un doppio inserimento nella tabella?
    Grazie mille.

  2. #2
    Usa un indice UNIQUE.
    STK/Unit: Unit Test framework per MariaDB
    http://stk.wikidot.com/stk-unit

  3. #3
    allora ho aggiunto la chiave UNICA nel campo id_user.
    Ho rieseguito l'insert ed effettivamente non inserisce nulla, ma mi restituisce questo messaggio
    Impossibile connettersi!Duplicate entry '5' for key 2
    Come faccio a non farmi dare sto messaggio?
    grazie ancora..

  4. #4
    no,vabbè, in pratica dove vado ad eseguire l'insert:
    codice:
    $rsLevel  	= mysql_query($sqlLevel) or die ("Impossibile connettersi!" . mysql_error());
    Ho il messaggio su "or die"....

    Quindi togliendolo, risolvo...

  5. #5
    però, per essere rispettosi dell'utente, dovresti controllare subito se quella chiave esiste, con una semplice select. se NON esiste, procedi con l'inserimento

  6. #6
    Per risparmiare un'istruzione, basta che fa la insert e controlla se riceve l'errore 1062. Anche se avesse più di un indice univoco, basterebbe fare un parsing del messaggio, che è del tipo:
    Duplicate entry '1' for key 'nome_chiave'
    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.