Visualizzazione dei risultati da 1 a 8 su 8

Discussione: Insert Into

  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2002
    Messaggi
    283

    Insert Into

    ciao devo inserire un record solo se non c'è già.

    avevo pensato alla funzione INSERT INTO aggiungendo where

    ------------------------------------------------------------------------------
    set rs=db_calendario.execute("INSERT INTO categorie (nome) VALUES ('nuovo') WHERE nome<>'nuovo'")
    set rs=nothing
    ------------------------------------------------------------------------------
    ma non funziona, avete qualche consiglio ?

  2. #2
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Prima fai la SELECT (con la WHERE) e poi la INSERT se la prima non ti riporta nulla.

    Roby

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2002
    Messaggi
    283
    ho provato così ma forse sbaglio qualcosa nel where perchè non mi scrive prova


    set rs=db_calendario.execute("select nome from categorie where nome <> 'nuovo'")
    while not rs.eof

    set rs2=db_calendario.execute("INSERT INTO categorie (nome) VALUES ('nuovo')")
    set rs2=nothing

    response.write "PROVA"

    rs.movenext
    wend

    response.end

  4. #4
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    codice:
    set rs=db_calendario.execute("select nome from categorie where nome <> 'nuovo'")
    if rs.eof
    
    db_calendario.execute("INSERT INTO categorie (nome) VALUES ('nuovo')")
    
    response.write "PROVA"
    end if
    set rs=nothing
    
    response.end
    Roby

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2002
    Messaggi
    283
    grazie della pazienza roby

    alla prima mi dava errrore e quindi ho aggiunto then a if rs.eof

    adesso non dà errore però non scrive ancora prova

    il campo nome è testo 255
    --------------------------------------------------------------------------------------
    set rs=db_calendario.execute("select nome from categorie where nome <> 'nuovo'")
    if rs.eof then

    db_calendario.execute("INSERT INTO categorie (nome) VALUES ('nuovo')")

    response.write "PROVA"
    end if
    set rs=nothing

    response.end
    --------------------------------------------------------------------------------

  6. #6
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Che vuol dire non scrive "prova"?
    Ti da errore?
    Cosa contiene attualmente il campo "nome"?

    Roby

  7. #7
    Utente di HTML.it
    Registrato dal
    Sep 2002
    Messaggi
    283
    prova è solo per controllare che la where funzioni
    se non c'è un campo "nome" con scritto nuovo dovrebbe scrivere prova.

    giusto ?

    attualmente il campo nome non contiene niente

  8. #8
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Se il campo nome è vuoto non entra mai nella IF!
    E quindi non scrive mai il nuovo record.

    Roby

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.