För att lagra en IPv4 kan du använda en INT UNSIGNED
, medan du för en IPv6 behöver en decimal(39,0),
för att lagra en ip i tabellen kan du använda funktionen INET_ATON
:
INSERT INTO table (ipcol) VALUES (INET_ATON('192.168.0.10'));
och hämta tillbaka den med funktionen INET_NTOA
:
SELECT INET_NTOA(ipcol) AS ip FROM table;
Detta svarade existerande före MySQL IPv6-stöd; användare bör göras medvetna om att MySQL nu har inbyggt stöd för IPv6: https://dev.mysql.com/doc/refman /5.6/sv/miscellaneous-functions.html