Сгенерированный столбец не работает для z / os, в то время как в LUW это нормально - PullRequest
0 голосов
/ 03 октября 2018

Следующий DDL действителен для LUW.

CREATE TABLE three_a(
    c1   INTEGER NOT NULL,
    c2   INTEGER NOT NULL GENERATED ALWAYS AS c1 + 10
)

Но он не действителен для z / OS:

Любая идея, как реализовать GENERATED ALWAYS, чтобы использовать его как вычисляемые столбцыв SQL Server?

Ответы [ 3 ]

0 голосов
/ 15 октября 2018

Используйте для этого триггер.Посмотрите руководство по SQL для команды «создать триггер».Если вам это нужно только при вставке строк, тогда достаточно «до вставки триггера».Если вы хотите использовать его и для изменений, вам также понадобится «триггер обновления».

0 голосов
/ 15 октября 2018

Не реализовано в версии Z / OS.Вы можете найти допустимые различные варианты «по умолчанию» в руководстве по SQL под оператором SQL «создать таблицу».Существует возможность определить fieldproc для столбца, но оно не будет (и не будет) тем, что вы хотите (подробнее об этом в руководстве по администрированию).

0 голосов
/ 15 октября 2018

CREATE TABLE Таблица1 (c1 INT НЕ ПУСТО, TS INT НЕ ПУСТО генерируется ВСЕГДА КАК IDENTITY);

Тип ROWID (вместо INT) определяется без «AS IDENTITY»

...