Quote Originariamente inviata da badaze Visualizza il messaggio
Non c'è nulla di complicato.

Hai dei dati. Se non sono presenti nella tabella li devi aggiungere. Se sono già presenti li devi aggiornare. Non capisco che cosa non capisci.

Primo passo :
Provo a fare un update del record che corrisponde al prodotto con cui sto lavorando.

Caso 1 - L'update aggiorna un record nella tabella allora mi fermo.

Caso 2 - L'update non aggiorna alcun record. Questo significa che non esiste alcun record che corrisponde alla chiave univoca (ovvero il prodotto). Allora passo al secondo passo.

Secondo passo :
Visto che non esiste alcun record che corrisponde al mio prodotto faccio un insert dei dati.

Per sapere uno o dei record è/sono stato/i aggiornato/i bisogna usare il rowcount (vedere il link nel mio primo messaggio).

Nella discussione, scrivi che non aggiorni se i dati sono identici. Io propongo di aggiornare anche se sono uguali (cioè di aggiornare sempre) perché aggiornando un record con gli stessi valori è come se tu non avessi fatto niente tranne il fatto che con rowcount eseguito dopo l'update sai se c'è stato o non c'è stato un record aggiornato.

Altrimenti dovresti fare una select per vedere se il prodotto esiste o no nella tabella. Poi a secondo del risultato fare un update o un insert. Quindi avrai sempre due accessi alla tabella. Mentre con il mio sistema hai un solo accesso nel caso dell'update e due nel caso dell'insert.

Se non hai ancora capito allora mi arrendo.
Purtroppo nn posso seguire questa logica... parliamo sempre dello stesso maledettissimo file!
Non posso eseguire l aggiornamento perchè se c è stata una modifica vorrei aggiornare anche la data e inserendo sempre i prodotti aggiornerei anche la data