Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it L'avatar di ubbicom
    Registrato dal
    Mar 2004
    Messaggi
    1,407

    Query Update su condizione

    Ciao a tutti.

    Questa è una query UPDATE che aggiorna i cambi A, B, C e D a secondo se la variabile associata è maggiore di 0:

    codice:
          sql = "UPDATE List SET "
          
          if strA > 0 then      
             sql = sql & " A = '" & strA & "' "
          end if
    
          if strB > 0 then      
             sql = sql & " , B = '" & strB & "' "
          end if
    
          if strC > 0 then      
             sql = sql & " , C = '" & strC & "' "
          end if
          
          if strD > 0 then      
             sql = sql & " , D = '" & strD & "' "
          end if
    Il problema è che posso avere tutte le combinazioni verificate, una parte oppure una sola.
    Come faccio a distinguere quando ad esempio è verificata strB e non è verificata la strA?
    Perchè come ho scritto la query mi va in errore a causa della virgola....

    Grazie-

  2. #2
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    codice:
    txt = ""
    if strA > 0 then
       txt = "A = '" & strA & "' "
    end if
    
    if strB > 0 then
       if txt <> "" then txt = txt &", "
       txt = txt & "B = '" & strB & "' "
    end if
    
    if strC > 0 then
       if txt <> "" then txt = txt &", "
       txt = txt & "C = '" & strC & "' "
    end if
    
    if strD > 0 then
       if txt <> "" then txt = txt &", "
       txt = txt & "D = '" & strD & "' "
    end if
    
    if txt <> "" then sql = "UPDATE List SET " & txt
    Roby

  3. #3
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    codice:
          sql = "UPDATE List SET "
          wsql = "" 
    
          if strA > 0 then      
             wsql = wsql & ", A = '" & strA & "' "
          end if
    
          if strB > 0 then      
             wsql = wsql & ", B = '" & strB & "' "
          end if
    
          if strC > 0 then      
             wsql = wsql & ", C = '" & strC & "' "
          end if
          
          if strD > 0 then      
             wsql = wsql & ", D = '" & strD & "' "
          end if
    
          sql = sql & mid(wsql&"  ",2)
    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  4. #4
    Utente di HTML.it L'avatar di ubbicom
    Registrato dal
    Mar 2004
    Messaggi
    1,407
    Grazie, così è corretta la query: ?

    codice:
          sql = "UPDATE List SET "
          wsql = "" 
    
          if strA > 0 then      
             wsql = wsql & ", A = '" & strA & "' "
          end if
    
          if strB > 0 then      
             wsql = wsql & ", B = '" & strB & "' "
          end if
    
          if strC > 0 then      
             wsql = wsql & ", C = '" & strC & "' "
          end if
          
          if strD > 0 then      
             wsql = wsql & ", D = '" & strD & "' "
          end if
    
          sql = sql & mid(wsql&"  ",2)  
          
          sql = sql & " WHERE "
          
          if request("strID") > "0" then
             sql = sql & " ID = " & request("strID")
          else
             sql = sql & " CODICE = '" & request.querystring("strCodice") & "' "         
          end if
             
          conn.execute(sql)

  5. #5
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Stampala a controlla.

    Roby

  6. #6
    Utente di HTML.it L'avatar di ubbicom
    Registrato dal
    Mar 2004
    Messaggi
    1,407
    Originariamente inviato da Roby_72
    Stampala a controlla.

    Roby
    E' perfetta, grazie mille!

  7. #7
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Originariamente inviato da ubbicom
    E' perfetta, grazie mille!
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

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.