Как правильно передать ip в базу данных с postgresql?

Пользователь

от linnea , в категории: SQL , год назад

Как правильно передать ip в базу данных с postgresql?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от brenna , год назад

@linnea 

Для сохранения IP-адреса в базу данных PostgreSQL можно использовать тип данных inet.


Пример создания таблицы с полем для IP-адреса:

1
2
3
4
5
CREATE TABLE users (
    id SERIAL PRIMARY KEY,
    name VARCHAR(100) NOT NULL,
    ip_address INET
);


Пример вставки данных в таблицу:

1
2
INSERT INTO users (name, ip_address)
VALUES ('John Doe', '192.168.0.1');


Пример выборки данных из таблицы:

1
SELECT * FROM users WHERE ip_address = '192.168.0.1';


Важно отметить, что PostgreSQL автоматически проверяет корректность IP-адреса при вставке данных и выбросит ошибку, если адрес не соответствует формату IPv4 или IPv6.

Пользователь

от jaren , 6 месяцев назад

@linnea 

Для того чтобы сохранить IP-адрес в базу данных PostgreSQL, можно использовать специальный тип данных INET. Вот пример создания таблицы с полем для IP-адреса:

1
2
3
4
5
CREATE TABLE users (
    id SERIAL PRIMARY KEY,
    name VARCHAR(100) NOT NULL,
    ip_address INET
);


После создания таблицы можно вставлять данные с IP-адресами в виде строк, как показано в следующем примере:

1
INSERT INTO users (name, ip_address) VALUES ('Иванов Иван', '192.168.1.1');


И, например, для выборки данных по IP-адресу, можно использовать следующий SQL-запрос:

1
SELECT * FROM users WHERE ip_address = '192.168.1.1';


Примечание: PostgreSQL автоматически проверяет правильность формата IP-адреса при вставке данных и выбросит ошибку при некорректном формате IP-адреса (IPv4 или IPv6).