polidog lab

Top About Rss
2009年11月05日

MySQLのINTEGERとかTINYINTとか

今日ふとした会話から、INTEGERとTINYINTの違いってどうなのって話をしていました?
int(1)とtinyintってなにがちがうのか?

結局のところ使用するバイト数が違うのね。
int(1)にしても4バイト使ってしまうのね。それに比べてtinyintは1バイトしか使わないのか。

せっかくだから、バイト数の違いを書いておきます。

<th>
  使用するバイト数
</th>
<td>
  1バイト
</td>
<td>
  2バイト
</td>
<td>
  3バイト
</td>
<td>
  4バイト
</td>
<td>
  8バイト
</td>

そういうことだったのか・・・。
ってことはflag的に使うものに関してはTINYINTで、恐ろしいぐらい増えそうな、なんとかID的なものには、BIGINT使えばいいってことですかね?
そーいえばcakeのdao_mysqlとかだとTINYINTはbooleanって扱いになるみたい。もうちょっとちゃんとcakePHPのソースコード読みます。

comments powered by Disqus