as near as I know, there is no constraint that keeps things from intersecting. At least not as a 'don't let meshes intersect' route. Personally, I think simply keying the charachter on the top of the table is your best, and easiest, bet. Unless you're looking at his shoes, you can easily key his feet in such a way as to keep his feet above the table, by just a teensy bit. Yes, constraints can be used dynamically, and often are. You can use a constraint to 'squish' parts of the charachter model (don't ask me how to do that, yet), when they get within a certain distance of an object. But even if you got it to 'squish', you'd still have to key the feet and legs to be a certain distance from the table....