title: Make a column "immutable" in SQLAlchemy
body: <p>I want to make a column "immutable" or "unupdateable" in SQLAlchemy.</p>
  
  <p>Right now I am using an event listener that raises an exception if that column is updated:</p>
  
  <pre><code>@event.listens_for(Person.email, 'set')
  def receive_set_person_email(target, value, old_value, initiator):
      if old_value != symbol('NEVER_SET') and old_value != symbol('NO_VALUE'):
          raise AttributeError("Cannot change a Person's email")
  </code></pre>
  
  <p>But I wonder if something like this is already built-in, or if I could get to a prettier and more generic solution.</p>