Are you sure your SQL is correct? Do you know exactly what Membership.GetUser(UserName, True).ProviderUserKey.ToString is returning and that there are records in the database with that criteria?

Set that to a string variable and attach the variable into the SQL line. That way, you can breakpoint it easilly to see what it is returning.

Your code looks solid.