title: Unable to alter table with foreign key
body: <p>My two empty tables:</p>
  
  <pre><code>CREATE TABLE person (
      person_id SMALLINT UNSIGNED,
      fname VARCHAR(20),
      lname VARCHAR(20),
      gender ENUM('m', 'f'),
      birth_date DATE,
      street VARCHAR(30),
      city VARCHAR(20),
      state VARCHAR(20),
      country VARCHAR(20),
      postal_code VARCHAR(20),
      CONSTRAINT pk_person PRIMARY KEY (person_id)
  );
  
  create TABLE favorite_food (
      person_id SMALLINT UNSIGNED,
      food VARCHAR(20),
      CONSTRAINT pk_favorite_food PRIMARY KEY (person_id, food),
      CONSTRAINT fk_fav_food_person_id FOREIGN KEY (person_id) REFERENCES person (person_id)
  );
  </code></pre>
  
  <p>Needed modification:</p>
  
  <p><code>ALTER TABLE person MODIFY person_id SMALLINT UNSIGNED AUTO_INCREMENT;</code></p>
  
  <p>Result:</p>
  
  <blockquote>
    <p>ERROR 1833 (HY000): Cannot change column 'person_id': used in a
    foreign key constraint 'fk_fav_food_person_id' of table
    'tom.favorite_food'</p>
  </blockquote>
  
  <p>Why is this and is there a way around this without dropping the tables and redefining them?</p>