PDA

Visualizza versione completa : Muoversi all'interno di un DB


lelaccio
10-09-2007, 23.17.05
Salve vi chiedo aiuto per un piccolo problema:
quando usavo VB6 per fare dei programmi mi muovevo nelle varie tabelle del DB con "Tabella...Recordset MoveLast ecc Eof o Bof poi leggevo il campo che mi interessava e con opportune If cambiavo o modificavo il valore o aggiungevo un unita nel campo nuovo.Ora che comincio ad usareVB2005 come faccio per ottenere lo stesso risultato? :wall:
Grazie a tutti

simon78_soft
11-09-2007, 20.19.42
Ciao!

Ti do' qualche indicazione: DataSet, DataTable, DataReader.
Questi 3 oggetti sono cio' che ti servono per poter lavorare con 2005.
Considera che la programmazione ad oggetti non e' piu' legata direttamente al DB ma lavori disconnesso: hai un set di dati (tabella per farla semplice) e quindi lavori su righe/colonne...
Se poi cerchi su msdn troverai migliaia di esempi a riguardo, a te il resto...

Ovviamente se dopo aver cercato non hai ancora la soluzione magari ti posto un po' di codice... ;)

lelaccio
11-09-2007, 21.57.04
Grazie Simon78 adesso vedo di arrangiarmi un po, semmai dopo ti faccio sapere

lelaccio
16-09-2007, 22.43.59
Ciao Simon78
approfitto ancora di te, mi servirebbe un esempio per inserire dei valori numerici aumentati di 1 unita, ogni volta che inserisci record nuovi nel DB. Il DB :MDB:
mi spiego meglio ho tre tabelle diciamo"Clienti,fatture,prestazioni" ovviamente correlate tra loro. Mi servirebbe inserire il numero di Identita_Cliente nelle altre tabelle in campo specifico; se il record nuovo nel campo ci va il dato nell'ultimo Record + 1, altrimenti il numero abbinato al Cliente.
Ti chiedo troppo? se puoi aiutami grazie

simon78_soft
20-09-2007, 08.10.46
Ciao Simon78
approfitto ancora di te, mi servirebbe un esempio per inserire dei valori numerici aumentati di 1 unita, ogni volta che inserisci record nuovi nel DB. Il DB :MDB:
mi spiego meglio ho tre tabelle diciamo"Clienti,fatture,prestazioni" ovviamente correlate tra loro. Mi servirebbe inserire il numero di Identita_Cliente nelle altre tabelle in campo specifico; se il record nuovo nel campo ci va il dato nell'ultimo Record + 1, altrimenti il numero abbinato al Cliente.
Ti chiedo troppo? se puoi aiutami grazie

Eccomi qui.
Allora, e' semplice. Se tu apri il DB ordinandolo sul campo Identita_Cliente (che sara' ovviamente numerico!) in modo decrescente (quindi SELECT TOP1 Identita_Cliente FROM TabellaFatture ORDER BY Identita_Cliente DESC) trovi l'ultimo codice inserito. Aquesto punto non ti resta che incrementare il valore di 1... nel caso ti serva l'ultimo numero abbinato al cliente ti bastera' aprire la tabella clienti e prendere il numero del record corrispondente... ti consiglio un campo Identity nella tabella clienti per semplicita'.
Spero di aver capito bene la domanda, altrimenti sono qui per qualunque chiarimento!

Ciao ;)

lelaccio
28-09-2007, 23.17.33
Scusami ma forse non ho capito bene il procedimento, non tanto questo passaggio che molto semplice, ma bensi il fatto che dopo aver inserito i dati di un cliente nuovo nei vari TextBox, questi non mi vengono copiati in un Record del DB, pur utilizzando il metodo Update.
Con il vecchio VB6 si faceva manualmente "RecordSet.Campo = TextBox.text?".
Adesso in che modo si pu per avere lo stesso risultato?
Grazie

simon78_soft
21-10-2007, 20.42.24
Eccomi qui...
Non e' cosi' facile a spiegarsi, cerca gli oggetti dataset e dataadapter e leggi un po' come utilizzarli... troverai maggiori info.

Ciao! ;)