文章詳情頁
MySQL存放IP地址 用數值型有什么好處?
瀏覽:132日期:2022-06-16 13:03:12
問題描述
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:域名會變..
相關文章:
1. mysql - 在不允許改動數據表的情況下,如何優化以varchar格式存儲的時間的比較?2. docker start -a dockername 老是卡住,什么情況?3. MySQL中無法修改字段名的疑問4. docker網絡端口映射,沒有方便點的操作方法么?5. css3 - 純css實現點擊特效6. 安全性測試 - nodejs中如何防mySQL注入7. javascript - 關于apply()與call()的問題8. java中返回一個對象,和輸出對像的值,意義在哪兒9. python文檔怎么查看?10. python - pandas dataframe如何對某列的空數據位置進行update?update的函數是自定義的,參數是同一行的另外兩列數據
排行榜
