Вопросы к Поиску с Алисой
Основное отличие использования GENERATED ALWAYS и GENERATED BY DEFAULT в PostgreSQL заключается в том, как обрабатываются явно заданные пользователем значения командами INSERT и UPDATE. postgrespro.ru
GENERATED ALWAYS указывает, что для столбца идентификации всегда будет генерироваться уникальное значение. www.geeksforgeeks.org Любая попытка вставить или обновить значение в такой столбец приведёт к ошибке, если не использовать OVERRIDING SYSTEM VALUE. www.geeksforgeeks.org
GENERATED BY DEFAULT, в отличие от предыдущего варианта, позволяет добавлять значения самостоятельно. ru.hexlet.io Если пользователь указывает значение, оно будет использоваться вместо значения, сгенерированного системой. www.geeksforgeeks.org
Таким образом, GENERATED ALWAYS строго контролирует значение столбца идентификации, не допуская никаких ручных изменений во время операций INSERT, а GENERATED BY DEFAULT даёт возможность при необходимости вставлять определённые значения. www.geeksforgeeks.org