Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 17

Hybrid View

  1. #1

    evitare di inserire riga duplicata

    ho una tabella con un campo id che si autoincrementa e due valori: title e text
    Vorrei inserire una nuova riga, ma solo se questa non è già presente. Cioè: inserisco solo title e text, se la coppia non c’è viene creata una nuova riga, altrimenti niente. Non mi interessa il valore del campo id, perché è ovvio che queste due righe hanno id diverso.


  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,509
    Prima di inserire fai una select cercando se esiste un'altra entry con stesso title e text, se la trovi niente, se non la trovi fai l'inserimeto.

    Altrimenti dichiari come key della tabella la coppia title e text, fai direttamente l'inserimento intercettando eventuali errori del db, se il db dà errore vuol dire che la coppia già c'è e gestisci tale caso.

  3. #3
    così...

    codice:
    INSERT INTO talella (title , text)
    SELECT 'Titolo', 'Il mio testo'
    FROM talella
    WHERE NOT EXISTS (SELECT * FROM talella WHERE title like 'Titolo' AND text like 'Il mio testo')

  4. #4
    Non riesco proprio a farlo funzionare questo discorso in queste righe...
    dovrei evitare che venga effettuato l'insert in tabella nel caso in cui esista già una riga con evento e username identici!

    Codice PHP:
    if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form1")) 
    {  
    $insertSQL sprintf("INSERT INTO partecipanti (evento, username, presente, nota) VALUES (%s, %s, %s, %s)",  
    GetSQLValueString($_POST['evento'], "int"),  
    GetSQLValueString($_POST['username'], "text"),
    GetSQLValueString($_POST['presente'], "int"),
    GetSQLValueString($_POST['nota'], "text"));
    ......;} 

  5. #5
    Non capisco cosa c'entri la insert che hai postato con quella del post iniziale?
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  6. #6
    situazione differente, medesimo problema.

  7. #7
    Quote Originariamente inviata da thenax Visualizza il messaggio
    situazione differente, medesimo problema.
    Medesima soluzione!
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  8. #8
    Quote Originariamente inviata da satifal Visualizza il messaggio
    Medesima soluzione!
    Non funziona. Mi dà errori

  9. #9
    Quote Originariamente inviata da thenax Visualizza il messaggio
    Non funziona. Mi dà errori
    Interessante!
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  10. #10
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,509
    Quote Originariamente inviata da thenax Visualizza il messaggio
    Non funziona. Mi dà errori
    Questo non vuol dire assolutamente nulla, è come se non avessi risposto affatto.

    Se non specifichi l'errore difficilmente ti si potrà aiutare.

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