[VB.NET 2005 EXPRESS] Access, Autoincrement e Datagridview

sabato 06 settembre 2008 - 15.17

plaguebreath Profilo | Junior Member

Sono ancora io, preciso che ormai ho perso la speranza di capirci qualcosa di questo benedetto ADO.NET, ho preso pure il libro di Sceppa e ancora perdurano i dubbi su cosa e come fare correttamente le cose quindi vabbè.
Sono ancora alle prese con questo benedetto database con campo ID incrementale e campo testo Descrizione non nulla. Ho il seguente problema, come gestire la colonna autoincrementale del DB Access ????
Mi spiego, ho letto sul libro di Sceppa che consiglia di configurare detto campo del dataset come autoincrementseed -1 e autoincrementstep a -1 lo ho fatto, però ho questo problema:
Aggiungo campo e ID si presenta come -1 , compongo la descrizione e aggiungo altro campo, ID adesso sul datagridview mi appare come -2 e così via, fino a quando non clicco sul salvataggio e quindi eseguo l'update, fatto questo i numeri nella colonna ID mi appaiono correttamente (più o meno correttamente ma questa è un altra storia) C'è la possibilità di sincronizzare nel datagridview il numero ID della nuova riga con il numero effettivamente assegnato dal DB access o dico un eresia ? Grazie a tutti e speriamo di capirci qualcosa prima o poi.
A tal proposito qualcuno ha qualche suggerimento su qualche buon libro che spieghi meglio di Sceppa in ADO.NET 2.0 ? Grazie a tutti

Allego anche immagine esplicativa spero :)

640x480 26Kb

Cteniza Profilo | Guru

Guarda l'evento rowupdating del dataadapter/tableadapter, su questo è possibile gestire il recupero dell'id attribuito dal database access.

plaguebreath Profilo | Junior Member

Grazie Cteniza e come faccio a sostituirlo nel datagridview ? (E' una cosa logica o mi sto complicando la vita inutilmente ? Perchè ho visto pochi esempi anche online dove fanno vedere l'ID in questo modo)
Grazie ancora.

Cteniza Profilo | Guru

Leggi il manuale che dici di avere preso (a proposito oltre che a possedere un manuale bisogna studiarlo), a pagina 521 (ma io ho il manuale in inglese) trovi l'esempio in visual basic e c#.
Il capitolo (non conosco il titolo in italiano) potrebbe essere intitolato "Utilizzare l'evento RowUpdated di SqlDataAdapter per recuperare dati dopo che avete inviato un aggiornamento al database"

plaguebreath Profilo | Junior Member

L'esempio lo ho trovato e è sul manuale che ho studiato ma evidentemente non sono ancora in grado di fare molte cose, grazie comunque per l'aiuto.

plaguebreath Profilo | Junior Member

Ciao Cteniza, sto rileggendo ancora (e ancora e ancora presumo perchè ci sono cose che propio non mi entrano in zucca) il buon Sceppa, al capitolo da te citato però non è il mio caso ma credo di aver capito dove sbaglio io. In sostanza all'esempio che tu mi hai detto viene fatto un UPDATE e poi vengono recuperati i valori ID. Quello che cercavo di fare io era non aspettare l'UPDATE ma averlo già visualizzato l'ID corretto ma leggendo il capitolo 6 a pagina 237 sulla sezione NON FARE il buon Sceppa consiglia di non visualizzare il valore autoincrement per tutte le righe che non sono state inviate al database in quando sono solo dei semplici SEGNAPOSTO ! Quindi con questa frase mi ha fatto capire che in sostanza quello che cercavo di afre io era una idiozia bella e buona ..... quante cose si devono imparare, prima di tutto a leggere e rileggere :) Grazie Cteniza ;)
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5