I found a solution to this problem on a usenet group -- if I include all of
the fields in both tables in my SQL statement with * instead of specifying
only the ones I actually need, then everything updates just fine.

Thanks again for taking the time to try and help me out!