1 - Table varaibles are a very viable solution. You may have found one of the few exceptions there but I would NOT stop using just yet.
2 - You didn't post the actual code so I can't spot the problem with what you supplied.
3 - Why are you not doing a single update statement to update all 100 rows in one batch?