您的位置:首页技术文章
文章详情页

MySQL存放IP地址 用数值型有什么好处?

【字号: 日期:2022-06-16 13:03:12浏览:55作者:猪猪

问题描述

MySQL存放IP地址 用数值型有什么好处?

问题解答

回答1:

很多程序员都会创建一个 VARCHAR(15) 字段来存放字符串形式的IP而不是整形的IP。如果你用整形来存放,只需要4个字节,并且你可以有定长的字段。而且,这会为你带来查询上的优势,尤其是当你需要使用这样的WHERE条件:IP between ip1 and ip2。

我们必需要使用UNSIGNED INT,因为 IP地址会使用整个32位的无符号整形。

而你的查询,你可以使用 INET_ATON() 来把一个字符串IP转成一个整形,并使用 INET_NTOA() 把一个整形转成一个字符串IP。在PHP中,也有这样的函数 ip2long() 和 long2ip()。

$r = 'UPDATE users SET ip = INET_ATON(’{$_SERVER[’REMOTE_ADDR’]}’) WHERE user_id = $user_id';

http://coolshell.cn/articles/...

回答2:

域名会变..

相关文章: