转换ipv4& ipv6都是数字

时间:2013-08-16 10:10:11

标签: mysql phpmyadmin

INET_ATON()

返回IP地址的数值

INET6_ATON()

返回IPv6地址的数值

我有一个包含ipv4&的列ipv6 both。

我尝试将这些转换为数字'ip_long'(列名称)

我使用INET_ATON,它只转换ipv4

我的问题是,INET6_ATON仅转换ipv6还是两者都转换?

是否有任何功能可以转换?我在db中有数百万行需要转换。

1 个答案:

答案 0 :(得分:3)

INET6_ATON()将转换ipv4和ipv6。如您所知,您需要MySQL 5.6.x或更高版本。

捕获只使用INET6_ATON()INET6_NTOA()。存储转换后的IP的列将为VARBINARY(16)类型。

SELECT INET6_NTOA(INET6_ATON("192.168.1.1"));

SELECT INET6_NTOA(INET6_ATON("2001:db8::1"));

请记住,test_table中的ip列是VARBINARY(16);