Risultato = Connessione.Edit(....)
....modifichi i dati
Risultato.Update
la sintassi della funzione edit e questa:
FUNCTION Edit ( Table AS String [ , Request AS String, Arguments AS , ... ] ) AS Result
quindi se non mi ricordo male dovresti fare qualcosa del genere:
criterio= nome_campo & "=" & valore
Risultato = Connessione.edit("Nome_tabella",criterio)
Risultato["campo_1"] = Text1.text
Risultato["campo_2"] = Text2.text
Risultato["campo_3"] = Text3.text
Risultato.Update
per semplicita puoi indicare come nome campo l' id del record da cambiare
La colpa è mia che sono stato troppo stringato.
Dunque, ipotizziamo che tu utilizzi un campo come indice, ad esempio campo_1. Quindi, diciamo che vuoi editare la riga il cui campo_1 contiene XXX. Ecco allora il codice:
Risultato = Connessione.Edit("nome_tabella", "campo_1=&1","XXX")
L'ultima opzione contiene il valore che sarà sostituito ad "&1" per creare la query SQL.
Il comando di cui sopra si potrebbe quindi tradurre in SQL puro così:
Risultato = Connessione.Exec("SELECT * FROM nome_tabella WHERE campo_1 = 'XXX'")
La differenza fra i 2 comandi è che il primo è più Gambassiano e lascia al linguaggio il compito di creare la query SQL.
scusa tiziano ma stiamo parlando di due cose differenti!
tu stai modificando il record tramice una query sql
l' esempio da noi dato utilizza invece gli strumenti di gambas
rimanendo nel semplice puoi fare così:
1) sapendo qual'è il record che devi modificare ne ricavi l' "id"
2) elimini tutto il record corrispondente all' "id"
3) aggiungi un nuovo record con tutti i nuovi dati
questo sistema molto semplice è non pulitissimo funziona benissimo se il tuo db ha l' idice autoincrementale .
tradotto in codice diventa:
'ponendo che l' indice della tua tabella di nome "elenco" si chiami "id" e che l id del record che 'vuoi cambiare sia ad esempio 21
dim hres as result
hData = $hConn.edit("elenco", "id=21")
hdata.Delete ' caccelli tutto il record
$hConn.Commit
$hConn.Begin
hres = $hConn.Create("elenco")
hres!campo1=valore1
hres!campo2=valore2
hres!campo3=valore3
' ecc ecc per tutti i campi
hres.update
$hconn.close
questo metodo io trovo che sia + pratico l' importante sia con questo metoto che con una query diretta è dare un "indirizzo" unico al db su cui scrivere altrimenti si cambiano piu elementi.