Visualizzazione dei risultati da 1 a 6 su 6

Discussione: Problemi SQL WHERE

  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2004
    Messaggi
    26

    Problemi SQL WHERE

    Ciao a tutti.
    Non riesco a far funzicare un comando SQL:
    codice:
    Command1.CommandText = "UPDATE Clienti  SET Data_Ultima_Visita = '12/10/2014' WHERE Usrnm = 'pluto'"
    Se scrivo in questo modo tutto ok
    Il campo Data_Ultima_Visita del record dove l'username è pluto viene aggiornato con la data scritta.
    Non riesco però ad usare una variabile nel WHERE... cioè se scrivo ad esempio.....
    codice:
    Command1.CommandText = "UPDATE Clienti  SET Data_Ultima_Visita = '11/09/1995'  WHERE Usrnm = Nome_della_Variabile"
    Ovviamente precedentemente la variabile è stata settata con il valore del username della sessione.
    ...non funziona.
    In pratica vorrei che al login dell'utente venisse scritto nel database la data della sua ultima visita.
    Dove sbaglio?
    Grazie 1000

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    codice:
    Command1.CommandText="UPDATE Clienti SET Data_Ultima_Visita = '11/09/1995' WHERE Usrnm = '".Nome_della_Variabile."'"
    Sintassi
    (apice-virgolette-punto-nome_varabile-punto-virgolette-apice)
    Ultima modifica di cavicchiandrea; 11-10-2014 a 11:39
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2004
    Messaggi
    26

    Non funzica

    Ho provato anche ad usare un campo univoco numerico ma......
    codice:
    <%Dim Variabile_ID_Cliente
    Variabile_ID_Cliente = (Recordset_Username.Fields.Item("IdCliente").Value)
    Response.Write (Variabile_ID_Cliente)
    Set Command1 = Server.CreateObject ("ADODB.Command")
    Command1.ActiveConnection = MM_connessione_STRING
    Command1.CommandText = "UPDATE Clienti  SET Data_Ultima_Visita = '05/05/1995'  WHERE IdCliente = '".Variabile_ID_Cliente.'" "   
    Command1.CommandType = 1
    Command1.CommandTimeout = 0
    Command1.Execute()
    %>
    .....Ancora non va.....
    Altro aiutino?
    Grazie grazie

  4. #4
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Quote Originariamente inviata da dnlcns Visualizza il messaggio
    Ho provato anche ad usare un campo univoco numerico ma......
    codice:
    <%Dim Variabile_ID_Cliente
    Variabile_ID_Cliente = (Recordset_Username.Fields.Item("IdCliente").Value)
    Response.Write (Variabile_ID_Cliente)
    Set Command1 = Server.CreateObject ("ADODB.Command")
    Command1.ActiveConnection = MM_connessione_STRING
    Command1.CommandText = "UPDATE Clienti  SET Data_Ultima_Visita = '05/05/1995'  WHERE IdCliente = '".Variabile_ID_Cliente.'" "   
    Command1.CommandType = 1
    Command1.CommandTimeout = 0
    Command1.Execute()
    %>
    .....Ancora non va.....
    Altro aiutino?
    Grazie grazie
    Se usi id (numerico) non deve andare tra gli apici ".Variabile_ID_Cliente.", in oltre fai attenzione alla sintassi gli apici devono racchiudere la variabile
    La regola sql query se la variabile è una stringa di testo va tra gli apici, se numerica no
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2004
    Messaggi
    26
    Bhe.. Anzitutto devo ringraziarti per le risposte...
    Ma non riesco propio a farlo andare.
    Se uso (ovviamente solo per un test):
    codice:
    <%Dim Variabile_ID_Cliente
    Variabile_ID_Cliente = (Recordset_Username.Fields.Item("IdCliente").Value)
    Response.Write (Variabile_ID_Cliente)
    Set Command1 = Server.CreateObject ("ADODB.Command")
    Command1.ActiveConnection = MM_connessione_STRING
    Command1.CommandText = "UPDATE Clienti  SET Data_Ultima_Visita = '05/05/1995'  WHERE IdCliente = 65"    
    Response.Write (Variabile_ID_Cliente)     ' questo l'ho messo per vedere se la variabile è corretta.
    Command1.CommandType = 1
    Command1.CommandTimeout = 0
    Command1.Execute()
    %>
    Funziona tutto ok e la variabile viene scritta regolarmente sulla pagina (vedi riga di codice con commento)
    Se invece
    codice:
    <%Dim Variabile_ID_Cliente
    Variabile_ID_Cliente = (Recordset_Username.Fields.Item("IdCliente").Value)
    Response.Write (Variabile_ID_Cliente)
    Set Command1 = Server.CreateObject ("ADODB.Command")
    Command1.ActiveConnection = MM_connessione_STRING
    Command1.CommandText = "UPDATE Clienti  SET Data_Ultima_Visita = '05/05/1995'  WHERE IdCliente = ".Variabile_ID_Cliente.""
    Response.Write (Variabile_ID_Cliente)     ' questo l'ho messo per vedere se la variabile è corretta.
    Command1.CommandType = 1
    Command1.CommandTimeout = 0
    Command1.Execute()
    %>
    Non va.
    Adopero Dreamweaver e se inserisco un "aggiorna record" con la procedura guidata di dreamweaver, e devo quindi adoperarare, un modulo la stringa SQL viene fuori così:
    codice:
        MM_editCmd.CommandText = "UPDATE Clienti SET Data_Ultima_Visita = ? WHERE IdCliente = ?"
    Però con la procedura di Dreamweaver l'aggiornamento si effettua solo alla pressione del pulsante del form, io vorrei invece che il record si aggiornasse quando si carica la pagina.

  6. #6
    Utente di HTML.it
    Registrato dal
    Sep 2004
    Messaggi
    26

    Trovata la sintassi corretta!!!

    Eccola qua:
    codice:
    Command1.CommandText = "UPDATE Clienti  SET Data_Ultima_Visita=Date() WHERE IdCliente=" &(Recordset_Username.Fields.Item("IdCliente").Value)
    La variabile va aggiunta DOPO le virgolette di chiusura della stringa SQL adoperando l'operatore "&".
    In questo caso invece della variabile vera e propria ho aggiunto direttamente il valore dal record.

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.