Ho il seguente problema:
vorrei creare una pagina asp la quale, ricevendo i dati da un form compilata da un utente registrato, incrementi (+1) un volore numerico (che parte da 0) di un campo presente nel database dove sono contenuti i dati dell'utente e che poi inserisca i dati compilati nel form in un'altro database.
Avevo pensato ad estrappolare il valore del campo di quell'utente, incrementarlo, poi updatare, ma credo che, pur andando bene, non sia troppo performante: due aperture dello stesso database per un'opearazione del genere!
Così se qualcuno avesse qualche idea con un'unica operazione sul database si faccia avanti... grazie 1000.


Faccio della mia ignoranza una virtù per stimolare il cervello con soluzioni alternative.
......LELO
137 messaggi dal 06 settembre 2002
usa SUM

Davide Pongan

Davide Pongan
www.pongan.com
scusa tanto la mia ignoranza, ma non so cosa sia SUM!


Faccio della mia ignoranza una virtù per stimolare il cervello con soluzioni alternative.
......LELO
137 messaggi dal 06 settembre 2002
Non ho sotto mano il manuale SQL, ma SUM è una funzione che aumenta di X il valore di un campo. Non mi ricordo la sitassi, appena la trovo o mi viene a mente te la scrivo!

Davide Pongan

Davide Pongan
www.pongan.com
28 messaggi dal 13 marzo 2001
La funzione SUM in SQL è una funzione da utilizzare come risultato di una SELECT, come lo sono MAX e MIN.
Conosco una funzione SUM che opera direttamente sui record solo per FoxPro.
Allora puoi pensare ad una espressione del tipo:
"UPDATE tabella SET colonna = ((SELECT MAX(colonna) FROM TABELLA) + 1)"
attenzione però a condizioni WHERE!
Dimmi se funziona...


71 messaggi dal 06 settembre 2002
Mi pare di aver capito che il campo da incrementare è relativo al singolo utente. Se è così la query è semplicissima:
"Update tabella set contatore = contatore + 1 where utente = " & utentecorrente
Nel caso in cui utente sia un campo char:
"Update tabella set contatore = contatore + 1 where utente = '" & utentecorrente & "'"



Ciao

Marco

http://www.survivor2.it/public/fregoso/index.asp

Ciao

Marco
Grazie MArco, il tuo funziona alla grande:
per tutti

<%
nome = session("nome")
cognome = session("cognome")
user = session("auth")
database = "../users/db/users.mdb"
strConn = "DRIVER={Microsoft Access Driver (*.mdb)};" &_
"DBQ=" & server.mappath(database)
'SQL = "UPDATE esercizi_inseriti FROM users WHERE ID = " & request.querystring("codice")
SQL = "Update users set esercizi_inseriti = esercizi_inseriti + 1 where nome='"& nome & "' and cognome='"& cognome & "'"
'SQL = "Update tabella set contatore = contatore + 1 where utente = '" & utentecorrente & "'"
Set rs = Server.CreateObject("ADODB.Recordset")
rs.Open SQL, strConn
%>


Faccio della mia ignoranza una virtù per stimolare il cervello con soluzioni alternative.
......LELO

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.