[RESOLVED] Data Reader Null problem
Hi,
looking at the code below you can see Im just filling a data table through a data reader. But everytime I try read a value that is null I get a SQLNullValueException this method or action cannot be called on NullValues.
VB Code:
Do While objDatabase.SqlRdrCustomers.Read
dr = ddsRecommends.tblRecommends.NewRow()
dr("PK_RecommendID") = objDatabase.SqlRdrCustomers.GetValue(0)
dr("FK_SaleNo") = objDatabase.SqlRdrCustomers.GetValue(1)
dr("InsertDate") = objDatabase.SqlRdrCustomers.GetDateTime(2)
dr("Status") = objDatabase.SqlRdrCustomers.GetValue(3)
dr("DateOfSale") = objDatabase.SqlRdrCustomers.GetDateTime(4)
[U] dr("DateLastLetterSent") = objDatabase.SqlRdrCustomers.GetDateTime(5)[/U]
dr("LettersSentCount") = objDatabase.SqlRdrCustomers.GetValue(6)
dr("CustName") = objDatabase.SqlRdrCustomers.GetString(7)
ddsRecommends.tblRecommends.Rows.Add(dr)
objMainform.ProgressBar1.PerformStep()
Loop
Re: Data Reader Null problem
well it looks to me as though the value of objDatabase.SqlRdrCustomers.GetDateTime(5) is null... if that is the case, you need to add some extra handling code to handle situations where the code encounters a null value
Re: Data Reader Null problem
I tried this but then I get the error
"Is requires operands that have reference types but this operand has the type 'Date'"
VB Code:
If Not [U]objDatabase.SqlRdrCustomers.GetDateTime(5)[/U] Is DBNull.Value Then dr("DateOfSale") = objDatabase.SqlRdrCustomers.GetDateTime(4)
Re: Data Reader Null problem
try
VB Code:
If Not objDatabase.SqlRdrCustomers.GetDateTime(4) [b]=[/b] DBNull.Value then
although it is early and I have not had my coffee yet ;)
Re: Data Reader Null problem
Instead of
VB Code:
If Not objDatabase.SqlRdrCustomers.[COLOR=DarkRed]GetDateTime(4)[/COLOR] Is DBNull.Value Then dr("DateOfSale") = objDatabase.SqlRdrCustomers.GetDateTime(4)
Try
VB Code:
If Not objDatabase.[COLOR=DarkRed]SqlRdrCustomers(4)[/COLOR] Is DBNull.Value Then dr("DateOfSale") = objDatabase.SqlRdrCustomers.GetDateTime(4)
Re: Data Reader Null problem
Instead use
VB Code:
If Not objDatabase.SqlRdrCustomers(4) Is DBNull.Value Then dr("DateOfSale") = objDatabase.SqlRdrCustomers.GetDateTime(4)
Re: Data Reader Null problem
"Operator = is not defined for types 'Date' and 'System.DBNull'"
VB Code:
If Not [U]objDatabase.SqlRdrCustomers.GetDateTime(4) = DBNull[/U].Value then
Re: [RESOLVED] Data Reader Null problem
see i knew i needed my coffee..
so fish is it resolved as your topic says? or are you still having problems?