Finding table realtionships programatically

How do I programatically (say, given an AciveRecord model class or instance) find out if it has any relationships to other tables? Preferably using the database's native directives (but using <has_many> and the like if not possible).

Is there a way to set table relationships at a database level using migrations?