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

    SQL: domanda su UPDATE * SET.. db

    Too few parameters..
    Codice:
    codice:
       sql_update_coundadv="UPDATE ricerca_tempo SET accessi = 1, tempo= '"& DatePart("yyyy",Date) &"-"& DatePart("m",Date) &"-"& DatePart("ww",Date) &"' WHERE chiave LIKE '"&Trim(Request.QueryString("q"))&"'"
       Response.Write(sql_update_coundadv)
       conn_gloss.execute sql_update_coundadv '**ERRORE***
    L'struzione risulta così:

    UPDATE ricerca_tempo SET accessi = 1, tempo= '2005-2-8' WHERE chiave LIKE 'prova'

    Io ho prima di tutto questo problema: non riesco a far andare questa query.
    Poi... io dovrei, più che settare ad 1 gli accessi, aggiungere 1 al valore già presente.

    Per fare questo però, devo fare una selezione specifica solo per estrarre il contenuto della colonna precedente, o esiste un modo per farlo direttamente dalla query UPDATE.. ?

  2. #2
    Ho complicato le cose..
    ma i problemi sono gli stessi:
    codice:
        sql_check_tempo="SELECT accessi as accessi_past2 FROM ricerca_tempo WHERE chiave LIKE '"&Trim(Request.QueryString("q"))&"'"
    	Response.Write(sql_check_tempo)
    	rs.open sql_check_tempo, conn_gloss 'guardo/memorizzo se accessi/chiave è già presente
    	If NOT Rs.EOF Then 'Se è già presente 
    	 accessi_past2=rs.fields("accessi_past2")
    	 rs.close
         sql_update_countadv="UPDATE ricerca_tempo SET accessi = "& 1 &", tempo= '"& DatePart("yyyy",Date) &"-"& DatePart("m",Date) &"-"& DatePart("ww",Date) &"' WHERE chiave LIKE '"&Trim(Request.QueryString("q"))&"'"
         Response.Write(sql_update_countadv)
         conn_gloss.execute sql_update_countadv
    	Else 'Se la chiave non è presente
    	 rs.close
    	 sql_insertadv="INSERT INTO ricerca_tempo (id, tempo, accessi) VALUES (" & id_chiave & ", '" & DatePart("yyyy",Date) &"-"& DatePart("m",Date) &"-"& DatePart("ww",Date) &"', 1) WHERE chiave LIKE '"&Trim(Request.QueryString("q"))& "'"
    	 conn_gloss.execute sql_insertadv 'Inserisco id della parola chiave, riferiemnto temporale ed 1 accesso
    	End If
    L'errore:
    Too few parameters. Expected 1

    La riga incriminata
    corrisponde all'esecuzione della SQL sql_check_tempo (la prima)

    Ecco l'output della query SQL
    SELECT accessi as accessi_past2 FROM ricerca_tempo WHERE chiave LIKE 'prova'

  3. #3
    per incrementare il campo accessi ti bastera' scrivere


    ... SET accessi = accessi +1 ....

  4. #4

    Grazie =)

    Grazie mille,
    un problema è risolto.

    Invece perchè mi da quell'errore, che di fatto mi impedisce di far funzionare il tutto?

    Mi sembra che la query SQL sia corretta, ed invece..

    Dove è l'errore?

    Riky

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.