title: MySQL primary/foreign key size?
body: <p>I seem to see a lot of people arbitrarily assigning large sizes to primary/foreign key fields in their MySQL schemas, such as INT(11) and even BIGINT(20) as WordPress uses.</p>
  
  <p>Now correct me if I'm wrong, but even an INT(4) would support (unsigned) values up to over 4 billion. Change it to INT(5) and you allow for values up to a quadrillion, which is more than you would ever need, unless possibly you're storing geodata at NASA/Google, which I'm sure most of us aren't.</p>
  
  <p>Is there a reason people use such large sizes for their primary keys? Seems like a waste to me...</p>