|
-
Oct 21st, 2005, 08:30 AM
#1
Thread Starter
Frenzied Member
[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
-
Oct 21st, 2005, 08:36 AM
#2
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
-
Oct 21st, 2005, 08:40 AM
#3
Thread Starter
Frenzied Member
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)
-
Oct 21st, 2005, 08:42 AM
#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
-
Oct 21st, 2005, 08:42 AM
#5
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)
-
Oct 21st, 2005, 08:43 AM
#6
Fanatic Member
Re: Data Reader Null problem
Instead use
VB Code:
If Not objDatabase.SqlRdrCustomers(4) Is DBNull.Value Then dr("DateOfSale") = objDatabase.SqlRdrCustomers.GetDateTime(4)
-
Oct 21st, 2005, 08:44 AM
#7
Thread Starter
Frenzied Member
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
-
Oct 21st, 2005, 08:53 AM
#8
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?
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|