Looks like you have a
odr.Read()
statement before the while loop some where and that is why when you enter the while loop it shows the first record and the the moment passing
Do While dr.Read()
it shows the second record hence missing the first record for you.
Please check your code before the while loop and make sure there is no
odr.Read()