Рассматривая определение предложения DEFAULT
(в создание таблицы ) и тот факт, что то, что там разрешено, ограничено
<default option> ::= <literal> | <datetime value function> | USER
| CURRENT_USER | CURRENT_ROLE | SESSION_USER | SYSTEM_USER |
CURRENT_CATALOG | CURRENT_SCHEMA | CURRENT_PATH | NULL
И <datetime value function>
определяется как
функция значения даты-времени
<datetime value function> ::= ...
Укажите функцию, которая возвращает значение даты-времени. Поддерживаемые функции значений даты и времени перечислены и описаны в главе Встроенные функции .
Поскольку UNIX_MILLIS
не возвращает значение даты и времени, но BIGINT
, это Вполне возможно, что UNIX_MILLIS
не считается <datetime value function>
и поэтому недоступен в предложении DEFAULT
.
Это, кажется, подтверждается просмотром синтаксического анализатора предложения по умолчанию , который фильтрует разрешенные выражения на основе их типа результата.
Как совет, я не проверял его, но возможно, что включение режима совместимости PostgreSQL может позволить вам использовать DEFAULT UNIX_TIME()
или, возможно, DEFAULT (UNIX_TIME())
.