Để lưu trữ IPv4, bạn có thể sử dụng INT UNSIGNED
, trong khi đối với IPv6, bạn cần decimal(39,0),
để lưu trữ một ip trong bảng, bạn có thể sử dụng hàm INET_ATON
:
INSERT INTO table (ipcol) VALUES (INET_ATON('192.168.0.10'));
và lấy lại nó bằng hàm INET_NTOA
:
SELECT INET_NTOA(ipcol) AS ip FROM table;
Câu trả lời này đã tồn tại trước khi hỗ trợ MySQL IPv6; người dùng nên biết rằng MySQL hiện hỗ trợ IPv6: https://dev.mysql.com/doc/refman /5.6/en/misosystem-functions.html