Datareader con valore null

sabato 15 gennaio 2011 - 12.23
Tag Elenco Tags  VB.NET  |  .NET 3.5  |  MySQL 5.5

pigeonit Profilo | Newbie

Buongiorno
ho un problema nella gestione di un datareader quando questo assume valore null:
Attraverso il codice qui sotto io devo ricavare, da una tabella di un database, il valore dell'ultimo documento memorizzato (che può essere di due tipi ognuno con la sua numerazione). Funziona tutto bene fino a quando la query restituisce un valore, ma quando questa non restituisce un valore mi da l'errore:
"I dati hanno valore Null. Impossibile chiamare il metodo o la proprietà su valori Null."
Siccome questa situazione si dovrà verificare ogni anno come faccio a gestire questo comportamento?

Vi chiedo inoltre un'altra cosa:
il passo successivo sarà creare una query di accodamento. Pensate che per come ho impostato il codice sia fattibile?

Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra

Bruno

Ho risolto mettendo:
If Not (MySQLDr.IsDBNull(0)) Then UltimoOdgOds = MySQLDr.GetInt32("Ultimo") NuovoOdgOds = UltimoOdgOds + 1 Else NuovoOdgOds = 1 End If

Rimane comunque aperta l'altra domanda che avevo fatto e cioè se, per come ho impostao il codice è possibile eseguire anche una query di accodamento.

alx_81 Profilo | Guru

>Buongiorno
ciao

>il passo successivo sarà creare una query di accodamento. Pensate
>che per come ho impostato il codice sia fattibile?
Cosa intenti? Vuoi fare una insert successiva? Basta creare un nuovo comando per una insert, nulla più..
--
Alessandro Alpi | SQL Server MVP
MCP|MCITP|MCTS|MCT

http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi

pigeonit Profilo | Newbie

Grazie alx_81, si in effetti mi sono espresso male ma tu hai capito lo stesso quello che intendevo e cioe fare un insert successivo utilizzando anche quel numero che mi veniva fuori dal codice che ho postato. Ho fatto alcune prove e il risultato finale funzionante è questo:

Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra

Buonaserata a tutti
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-2017
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5