Какое значение по умолчанию для типов "inet" и "cidr" в PostgreSQL? - PullRequest
0 голосов
/ 19 ноября 2018

Когда я выполняю SQL:

CREATE TABLE IF NOT EXISTS "xxx" (
    "id" serial NOT NULL PRIMARY KEY,
    "ip" inet NOT NULL DEFAULT '',
    "mac_address" macaddr NOT NULL DEFAULT '',
    "status" varchar(64) NOT NULL DEFAULT ''
);

Он сообщает об ошибке:

execute error: pq: invalid input syntax for type macaddr: ""

Так, каково значение по умолчанию типа "inet" и "cidr" в PostgreSQL?

1 Ответ

0 голосов
/ 19 ноября 2018

Я бы предпочел использовать значения NULL вместо некоторых значений по умолчанию.

Но вы можете ввести свои собственные значения, если вы следуете указанным форматам:

CREATE TABLE IF NOT EXISTS "xxx" (
    "id" serial NOT NULL PRIMARY KEY,
    "ip" inet NOT NULL DEFAULT '0.0.0.0'::inet,
    "mac_address" macaddr NOT NULL DEFAULT '00-00-00-00-00-000'::macaddr,
    "status" varchar(64) NOT NULL DEFAULT ''
);
...