Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
App. WinForms / WPF .NET
Inserire dati in un DB Access
domenica 27 marzo 2005 - 23.23
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
Psycho
Profilo
| Newbie
9
messaggi | Data Invio:
dom 27 mar 2005 - 23:23
Salve a tutti!
Dal titolo thread si capisce che uso da pochissimo il VB.net sono un appassionato di VB6 ma dopo tanti ripensamenti mi sono deciso a passare al vb.net
Allora....
Sono giorni che provo ad inserire dati in un db access ma niente!!!
Il mio db risiede in C:\prova.mdb ed ha una tabella di nome tab con due campi A e B
L'unica cosa che sono riuscito a fare e mettere un DataAdapter e configuralo(cioè l'ho collegato al DB prova)
Poi sono riuscito anche a mettere un Dataset e anche questo lo configuarto.
Poi ho messo un datagrid sul form e l'ho collegato al dataset e fin qui tutto funziona!
ORA!!!!
Come diavolo si fa ad aggiungere/modificare/eliminare/salvare sti benedetti RECORD????
Ci Sto provando da stamattina ma niete mi sono anche comprato il libro di FRANCESO BALENA Progammare Microsoft Visual Basic .Net Versione 2003 75 ma niente!!!
Eppure con il VB6 facevo di tutto (non per vantarmi, ma per me era cosi semplice)
Grazie a tutti per l'interesse
Cteniza
Profilo
| Guru
1.509
messaggi | Data Invio:
lun 28 mar 2005 - 08:30
Andiamo male.
Hai postato la stessa domanda anche su altri forum e hai già avuto una risposta che è riconducibile a "non è sufficiente comprare i manuali bisogna anche leggerli".
alextyx
Profilo
| Expert
668
messaggi | Data Invio:
lun 28 mar 2005 - 09:22
Caro Psycho, io scelsi di rimanere con ADO, per poter usare il lock pessimistico. Se hai urgenza di manipolare qualcosa, puoi usare ADO anche tu, basta che tu aggiunga un riferimento alla adodb.net (almeno sulle versioni aggiornate di VS.Net, sulle precedenti era una COM). Altrimenti puoi usare delle Query di comando SQL, che dovrebbero svincolarti dagli oggetti di accesso ai dati con i quali ti stai scontrando e che io non conosco, se non di nome. Comunque, sono sicuro che una più attenta rilettura dei manuali ti porterà anche la soluzione del tuo problema con ADO.Net.. Come suggeriva cteniza, probabilmente ti è sfuggito un dettaglio. A volte capita di perdere giornate x una banalità che continua a celarsi ostinatamente al nostro sguardo, finchè nn ci si accorge che era proprio sotto i nostri occhi! Insistsi, uscirai vincitore!:-)
Psycho
Profilo
| Newbie
9
messaggi | Data Invio:
lun 28 mar 2005 - 10:57
x Cteniza!!
Ho iniziato a leggere ma dato che di oltre 1200 pag. non vorrei leggermi tutto il manuale e poi rendermi conto che è meglio continuare con il VB6. Vorei solo capire se ne vale la pena passare a vb.net!
Per quanto riguarda il codice che mi hai fornito tu mi è stato di grande aiuto tranne che mi da un errore a questo punto
da.FillSchema(ds,"Tab", SchemaType.Mapped)
e non sono tiuscito ad andare avanti ma nonostante tutto ho iniziato a capire che ci varrà molto tempo per iniziare a scrivere qualke riga di codice sensato.
Grazie ancora
Psycho
Profilo
| Newbie
9
messaggi | Data Invio:
lun 28 mar 2005 - 11:02
x Alextyx
"basta che tu aggiunga un riferimento alla adodb.net (almeno sulle versioni aggiornate di VS.Net, sulle precedenti era una COM). Altrimenti puoi usare delle Query di comando SQL, che dovrebbero svincolarti dagli oggetti di accesso ai dati con i quali ti stai scontrando"
Potresti dirmi come fare???
Nel frattempo inizio di nuovo a leggere in manuale!
Grazie a tutti
Cteniza
Profilo
| Guru
1.509
messaggi | Data Invio:
lun 28 mar 2005 - 11:36
Ho sbagliato io
Va scritto:
da.FillSchema(ds, SchemaType.Mapped,"Tab")
Psycho
Profilo
| Newbie
9
messaggi | Data Invio:
lun 28 mar 2005 - 12:24
Ora provo
Grazie mille Cteniza
alextyx
Profilo
| Expert
668
messaggi | Data Invio:
lun 28 mar 2005 - 15:07
Caro Psycho, puoi aggiungere un riferimento da Progetto----> Aggiungi Riferimento.
A questo punto ti appare una lista di voci, di tre possibili liste. Seleziona la lista NET, cliccando sulla linguettina della scheda (avrà un nome ma ora nn mi viene :-)). La seconda voce, mi pare, dovrebbe essere 'adodb'. Lo clicchi e ti dovrebbe essere aggiunto ad una lista sottostante, che fino a quel momento sarà vuota, poi gli dai l'OK. A questo punto, se apri esplora soluzione e scompatti il nodo 'References', ci dovresti trovare anche 'adodb'. Se non lo avessi nella scheda dei NET, c'è una libreria nella scheda COM, mi pare sia la 'ActiveX Data Object ......2.7' o qualcosa del genere. Va bene anche quella, ma se hai il componente NET, è meglio. Dipende da quanto è aggiornato il tuo visual studio. Anzi, intanto aggiorna il sistema (XP?) e poi prova le operazioni che ti ho detto. Ciao.
Psycho
Profilo
| Newbie
9
messaggi | Data Invio:
lun 28 mar 2005 - 15:33
Ho fatto tutto come dicevi tu!
Ora lo trovo sotto il nodo REFERENCES.
Ora che devo fare???
Scusa ma non ho capito tanto bene a cosa mi serve ora!
GRAZIE mille per l'aiuto
Cteniza
Profilo
| Guru
1.509
messaggi | Data Invio:
lun 28 mar 2005 - 16:44
Se volete continuare ad utilizzare ADO perchè non continuate a farlo con vb6.
Pensare di programmare su .net utilizzando la sintassi di vb6 (e anche i suoi oggetti) è una cosa veramente ipocrita e illusoria.
Ottieni un oggetto che per essere installato ha bisogno sia del framework .sdk che del run time di visual basic e per di più con i difetti di entrambi.
Cteniza
Profilo
| Guru
1.509
messaggi | Data Invio:
lun 28 mar 2005 - 16:44
Se volete continuare ad utilizzare ADO perchè non continuate a farlo con vb6.
Pensare di programmare su .net utilizzando la sintassi di vb6 (e anche i suoi oggetti) è una cosa veramente ipocrita e illusoria.
Ottieni un oggetto che per essere installato ha bisogno sia del framework .sdk che del run time di visual basic e per di più con i difetti di entrambi.
Psycho
Profilo
| Newbie
9
messaggi | Data Invio:
lun 28 mar 2005 - 21:37
Caro Cteniza!
Il problema è che io vorrei continuare ad usare VB6 ma dove trovo la licenza????
Poi per i futuri OS come faccio???? Potrò continuare ad installare sempre le mie applicazioni fatte con VB6????
Se hai delle soluzione te ne sarei grato
ciaooo e grazie
Cteniza
Profilo
| Guru
1.509
messaggi | Data Invio:
lun 28 mar 2005 - 22:17
Se la licenza di vb6 la cerchi sui newsgroup o sui forum certamente che non la trovi.
Prova a fare un abbonamento a msdn oppure compra vb.net e fai il downgrade.
Non credo che la difficoltà di reperimento di vb6 sia una scusa valida per la porcheria di utilizzare su vb.net gli oggetti di vb6.
Psycho
Profilo
| Newbie
9
messaggi | Data Invio:
lun 28 mar 2005 - 22:44
Potresti gentilmente spiegarmi come fare il downgrade???
GRAZIE
alextyx
Profilo
| Expert
668
messaggi | Data Invio:
mar 29 mar 2005 - 00:06
Caro Cteniza, come ho scritto 'adodb' ormai è un componente NET. Esso ha delle caratteristiche non fornite da ADO.Net, per quanto riguarda i locking. Do per scontato che tu sappia di cosa sto parlando, ovviamente. Comunque anch'io consiglio di utilizzare ADO.Net, o in alternativa SQL 'secco'! L'unico motivo per l'utilizzo di ADO è, o l'urgenza di riutilizzare un know how acquisito, o la volontà di mantenre una certa varietà di cursori lato server e la possibilità di locking pessimistici che non debbano esssere ottenuti con strane alchimie transazionali, come richiederebbe ADO.Net. L'utilizzo di ADO, non mi ha richiesto le runtime di VB per il deployment, comunque. Utilizzando database MDB, ho dovuto installare le MDAC e ovviamente il FRAMEWORK di VB.Net. Tutto qui! Ad ogni modo, il mio voleva solo essere un suggerimento volto ad addolcire una transizione che mi sembrava un tantino traumatica, ma che penso sia comunque foriera di buoni frutti, perchè VB.Net ha molte frecce al proprio arco, che non si esauriscono certo nell'utilizzo o meno di ADO.Net. Ma questa è un'altra storia! :-))
Buona notte atutti. Passo e chiudo (almeno x questo thread)!
Cteniza
Profilo
| Guru
1.509
messaggi | Data Invio:
mar 29 mar 2005 - 08:44
Caro alextyx.
Quando dici "come ho scritto 'adodb' ormai è un componente NET." dici una cosa non vera.
>"Esso ha delle caratteristiche non fornite da ADO.Net, per quanto riguarda i locking."
L'unica cosa che non ha ado.net e non avrà mai è il binding diretto sul file così come era fatto con access con oggetti collegati direttamente sul database.
L'accesso diretto infatti va bene in limitatissimi casi di lavoro solitamente su multiutenza.
> L'unico motivo per l'utilizzo di ADO è, o l'urgenza di riutilizzare un know how acquisito
Allora rimani su vb6 che fai prima ancora, i vecchi ado e dao sono morti devi fartene una ragione
> o la volontà di mantenre una certa varietà di cursori lato server e la possibilità di locking pessimistici
>che non debbano esssere ottenuti con strane alchimie transazionali, come richiederebbe ADO.Net.
Anche il lock pessimistico non esiste più il modello di ado.net è disconnesso con il lock ottimistico
Personalmente utilizzo da sempre il timestamp e non ho trovato nessuna sgradevole sorpresa su ado.net nè ho mai utilizzato il lock pessimistico. A parte il fatto che in generale penso che non esiste nulla che abbia bisogno del lock pessimistico (a parte la competenza del programmatore nello sviluppo).
>L'utilizzo di ADO, non mi ha richiesto le runtime di VB per il deployment, comunque.
>Utilizzando database MDB, ho dovuto installare le MDAC e ovviamente il FRAMEWORK di VB.Net. Tutto qui!
Ecco è qui l'errore tu pensi che access sia l'unico database esistente e riconduci tutto il modello di sviluppo su di lui senza pensare che al mondo "tutti gli altri database" si comportano in modo diverso, il "diverso" è access o sono gli altri ad essere diversi ad affidarsi ad un modello disconnesso?.
>Ad ogni modo, il mio voleva solo essere un suggerimento volto ad addolcire una transizione che mi sembrava
>un tantino traumatica, ma che penso sia comunque foriera di buoni frutti
Sono nettamente contrario a quanto dici perchè non ho mai visto in nessun settore (soprattutto nel nostro) qualche cosa di più definitivo di una cosa "transitoria" (in grosse applicazioni se funziona nessuno va a rimetterci le mani per cui la scrittura deve essere sempre la più definitiva possibile).
>perchè VB.Net ha molte frecce al proprio arco, che non si esauriscono certo nell'utilizzo o meno di ADO.Net.
Si ma se gli togli ADO.NET e poi cominci a utilizzare anche gli OCX vecchi (come ho visto consigliare di fare) che cosa ottieni? Risposta: una emerita e grossa porcheria, una procedura ipocrita che fa finta di essere stata scritta con .net per convincere l'illuso programmatore che può mettere la conoscenza di .NET nel curriculum.
Cteniza
Profilo
| Guru
1.509
messaggi | Data Invio:
mar 29 mar 2005 - 08:47
Per fare il downgrade a visual basic 6 da visual basic .net è necessario avere la licenza di vb.net e rivolgersi ad un rivenditore autorizzato microsoft per ottenere i supporti (cd/dvd) di vb6
Psycho
Profilo
| Newbie
9
messaggi | Data Invio:
mar 29 mar 2005 - 12:10
Grazie Cteniza
basicdany
Profilo
| Expert
590
messaggi | Data Invio:
mar 29 mar 2005 - 16:33
Scusate se mi inserisco nella discussione, ritornando al libro di francesco balena anchio inizialmente non risucivo a capirci molto, ma poi con un po di esempi presi da internet, piccole guide su ado, sono riuscito ad aprire un db e a leggere, scrivere, modificare un record.... , allora ho letto il libro......Ciao
Torna su
Stanze Forum
Elenco Threads
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 !