Ошибка при создании неограниченного дочернего раздела в PostgreSQL - PullRequest
0 голосов
/ 28 мая 2020

Я использую Postgres 12 и следующие примеры из книги под названием PostgreSQL: Up and Running , опубликованной O'Reilly Media. Я пытаюсь создать группу разделенных таблиц следующим образом:

CREATE TABLE logs (
    log_id int GENERATED BY DEFAULT AS IDENTITY,
    user_name varchar(50),
    description text,
    log_ts timestamp with time zone NOT NULL DEFAULT current_timestamp
) PARTITION BY RANGE (log_ts);

Дочерний раздел:

CREATE TABLE logs_gt_2011 PARTITION OF logs
FOR VALUES FROM ('2012-1-1') TO (unbounded);

Это возвращает ошибку:

ERROR:  cannot use column reference in partition bound expression
LINE 2: for values from ('2012-1-1') to (unbounded); 

который создается впечатление, что unbounded - это имя столбца. Я думал, что unbounded было ключевым словом Postgres. Можете ли вы помочь мне найти правильный способ создания этого дочернего раздела?

Я использую Postgres на машине Windows 10 от Powershell.

1 Ответ

0 голосов
/ 28 мая 2020

Не знаю, откуда книга взята, но согласно руководству , это должно быть maxvalue:

Специальные значения MINVALUE и MAXVALUE могут использоваться, когда создание раздела диапазона, указывающего на отсутствие нижней или верхней границы значения столбца

CREATE TABLE logs_gt_2011 PARTITION OF logs
FOR VALUES FROM ('2012-01-01') TO (maxvalue);
...