Why the heck are you storing dates and times in a database as strings?
Why are you returning SELECT * FROM, and then using them as if you can be sure of the order of you values?
Why have you assumed that the date information in your database string is in any kind of format you understand?
First: Change your database. Replace all the string based date and time values with SQL DATETIME values, and validate them and convert them before you enter them into the DB. It's too late after that! Once your date value is in as a string "12/11/10" you have no idea if that is Dec 11 2010, Nov 12 2010, 10 Dec 2012 or any other date format. Bear in mind that I could happily enter "30/JUN/2012" or "30-06-12" and the only clue you have is the settings on my PC when I do it!
Second: Don't use SELECT * - it wastes bandwidth returning values you aren;t interested in, and leaves you wide open to future problems when someone adds columns to your database. List the values you want, and refer to them by name, not number:
SELECT Id, name, joinDate FROM myTable
name = reader("Name")
Then read the date and time value into a DateTime object and use it from there.