今天我们聊一下,ip地址应该用哪个类型,我们可能会用char(15)列来存储ip地址。实际是32位无符号的整数。不是字符串。用小数点只是为了方便的阅读。所以应该用无符号的整数存入ip地址。
mysql 提供 INET_ATON()和INET_NTOA() 函数
mysql> select inet_aton('192.168.0.1');
+--------------------------+
| inet_aton('192.168.0.1') |
+--------------------------+
| 3232235521 |
+--------------------------+
1 rows in set (0.05 sec)
mysql> select inet_ntoa(3232235521);
+-----------------------+
| inet_ntoa(3232235521) |
+-----------------------+
| 192.168.0.1 |
+-----------------------+
1 rows in set (0.06 sec)