9 messaggi dal 30 agosto 2005
Ciao!!
Sono nuovo del forum e decisamente inesperto con ASP...spero possiate aiutarmi.

Allora: Ho un form che vorrei usare per aggiornare solo in parte un db ACCESS dedicato a delle statistiche. Il db è semplice, una tabella con 5 campi e un id contatore. Ogni volta che vado ad aggiornare devo però crearmi un nuovo record. I dati di queste statistiche poi me li vado a leggere da un'altra pagina con una select.
Fin qui tutto bene. Se però dal form che uso voglio modificare per esempio solo 2 campi su 5, lasciando vuote le caselle di testo degli altri 3, posso fare in modo che nel nuovo record quei 3 campi abbiano il valore che avevano nel record precedente?

Mi date una mano col codice??Non so da dove cominciare!!
Grazie!!

E' arrabbiato con il mondo, con la propria famiglia e con se stesso. Più che altro è arrabbiato e basta. (Goblin furioso)

Scaglia abbastanza goblin su un qualsiasi problema e dovresti risolverlo. E in ogni caso ti ritroverai meno goblin trai i piedi. (
113 messaggi dal 03 maggio 2005
certo prima di modificare cioè prima di fare l'update apri un nuovo recordset e fai una select sul record che stai per andare a modificare ti salvi i valori in una variabile e poi quando vai a fare l'update gli dici di inserire quei valori al posto di quelli che ci sono + o meno così:

-apro recordset
sql (select * nome tabelle where id=id del record che stai per modificare)
-salvo nelle variabili i valori dei tra campi che mi servono
var1=rs("nome campo1")
var2=rs("nome campo2")
var3=rs("nome campo3")
-apro recordset per la modifica
sql (update nome tabella set nome campo='var1', campo2=var2 ecc

spero che tu abbia capito.....ciao....

sono un fesso con una tastiera in mano
9 messaggi dal 30 agosto 2005
allora:
Questo è quello che faccio per aggiornare il db normalmente......
<%
Dim nome, testo, conn

strConn="driver={Microsoft Access Driver (*.mdb)};DBQ=" & Server.MapPath("aggiorna_news.mdb")
set conn=server.createobject("ADODB.Connection")
conn.open strConn

Dim sql, rs
sql = "SELECT * FROM aggiornamenti"
Set rs = Server.CreateObject("ADODB.Recordset")
rs.Open sql, conn, 3, 3

rs.AddNew
rs("campo1") = Request.Form("campo1")
rs("campo2") = Request.Form("campo2")
rs("campo3") = Request.Form("campo3")
rs("campo4") = Request.Form("campo4")
rs("campo5") = Request.Form("campo5")
rs.Update

Set rs = Nothing
conn.Close
Set conn = Nothing
%>

il record che sto per andare a modificare sarebbe l'ultimo....quindi qualcosa tipo:
SELECT TOP 1 * FROM aggiornamenti ORDER BY id DESC ?
poi?Mi sto perdendo.....scusa!!!!

Modificato da J.Lankart il 30 agosto 2005 16.12 -

E' arrabbiato con il mondo, con la propria famiglia e con se stesso. Più che altro è arrabbiato e basta. (Goblin furioso)

Scaglia abbastanza goblin su un qualsiasi problema e dovresti risolverlo. E in ogni caso ti ritroverai meno goblin trai i piedi. (
9 messaggi dal 30 agosto 2005
scusate.........c'ho perso un sacco di tempo ma non so proprio dove sbattere la testa......avrei bisogno di una mano. A qualcuno va di perdere un po di tempo per starmi dietro?
Grazie!!

E' arrabbiato con il mondo, con la propria famiglia e con se stesso. Più che altro è arrabbiato e basta. (Goblin furioso)

Scaglia abbastanza goblin su un qualsiasi problema e dovresti risolverlo. E in ogni caso ti ritroverai meno goblin trai i piedi. (
113 messaggi dal 03 maggio 2005
stai facendo troppa confusione spiegati meglio quale record vuoi modificare?l'ultimo?sempre?non vuoi che l'utente sia a decidere che record modificare?tu in quello che hai scritto li modifichi tutti così se non metti un where id=record da modificare

spiega queste cose perchè dopo il problema non è così difficile te lo assicuro però non riesco a capire cosa vuoi fare

sono un fesso con una tastiera in mano
9 messaggi dal 30 agosto 2005
allora:
tutte le volte che aggiorno creo un nuovo record.
quando vado ad aggiornare posso anche decidere di farlo per un solo campo del record ok?
In quel caso, mi servirebbe che il nuovo record generato, abbia il valore aggiornato per quell'unico campo e per i restanti abbia invece gli stessi valori del record precedente!!

E' arrabbiato con il mondo, con la propria famiglia e con se stesso. Più che altro è arrabbiato e basta. (Goblin furioso)

Scaglia abbastanza goblin su un qualsiasi problema e dovresti risolverlo. E in ogni caso ti ritroverai meno goblin trai i piedi. (
113 messaggi dal 03 maggio 2005
ma scusa perchè ogni volta che aggiorni devi creare un record nuovo?non ti basta fare l'update di quello vecchio solo sui campi che ti interessano?ora ti faccio un esempio

tabella:
id
nome
cognome

mettiamo caso che tu voglia aggiornare solo il nome o solo quello che l'utente decide basta fare così

update nometabella set nome='nomeinserito' where id='id del record'

l'unica cosa che non riesco a capire come fà l'utente a sapere quale record sta modificando....viene da un cerca?cioè cerca il record che vuole poi schiaccia modifica sul record selezionato e gli vine una pagina con i valori correnti che poi lui và a modificare?

scusa se sono tardo ma sto cercando di aiutarti

sono un fesso con una tastiera in mano
9 messaggi dal 30 agosto 2005
scusa tu!!sono stato un po troppo ermetico!!
allora:
devo crearmi un record nuovo ogni volta perchè ho bisogno di uno storico. (il db contiene delle statistiche su una certa situazione aziendale).

il form verrà usato solo a livello interno, e chi lo userà sarà preventivamente "istruito". Comunque si, l'utente che cerca ha disposizione una piccola ricerca sullo stesso form!!
i dati delle statistiche li vado a reuperare da una seconda pagina asp con una select semplice semplice.....

E' arrabbiato con il mondo, con la propria famiglia e con se stesso. Più che altro è arrabbiato e basta. (Goblin furioso)

Scaglia abbastanza goblin su un qualsiasi problema e dovresti risolverlo. E in ogni caso ti ritroverai meno goblin trai i piedi. (

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.