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

    insert if table is empty

    Ciao,

    questa query scitta cosi mi ritorna errore (check sql manual...):

    Codice PHP:
    $insertSQL "INSERT INTO frequenzeswap VALUES $ext WHERE NOT EXISTS (SELECT * FROM frequenzeswap);"
    la stessa query senza il check ' WHERE NOT EXISTS (SELECT * FROM frequenzeswap) ' inserisce correttamente...

    Dove sbaglio ?

    Grazie

  2. #2
    INSERT non prevede il where. non avrebbe senso.

    Per ipotesi forse dovresti fare un UPDATE ma non so cosa vuoi fare.

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  3. #3
    Quote Originariamente inviata da piero.mac Visualizza il messaggio
    INSERT non prevede il where. non avrebbe senso.

    Per ipotesi forse dovresti fare un UPDATE ma non so cosa vuoi fare.
    Ciao Piero,

    Devo inserire dei record solo se la tabella è vuota, come qui:

    http://codeholes.blogspot.it/2012/01...able-only.html

    o qui

    http://stackoverflow.com/questions/5...table-is-empty

    o qui

    http://stackoverflow.com/questions/1...table-is-empty

  4. #4
    nei tuoi esempi dei link si esegue un INSERT ... SELECT e non un INSERT ... WHERE non ammesso.
    Il where e' riferito alla SELECT e non all'INSERT

    INSERT INTO salads (type, popularity)
    SELECT 'Cesar',10
    FROM DUAL
    WHERE NOT EXISTS (SELECT * FROM salads);

    INSERT INTO my_table (colname)
    SELECT 'foo'
    WHERE NOT EXISTS (SELECT * FROM my_table
    )


    Forse invece tu vuoi inserire dei tuoi valori solo se la tabella e' vuota. Nel primo esempio viene inserito "Cesar e 10" nel secondo "foo"


    Ultima modifica di piero.mac; 10-02-2015 a 01:08

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

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.