Я пытаюсь добавить сгенерированный столбец в существующую таблицу с помощью этого сценария.
alter table Asset_Store add column
md5_hash VARCHAR(100) GENERATED ALWAYS AS
(CAST(UPPER(
case
when OR_ID is not null then MD5(cast(OR_ID as varchar(100)))
when Asset_ID is not null then MD5(Asset_ID)
else null
end
) as VARCHAR(100)))
STORED
;
но я получаю сообщение об ошибке:
SQL Error [42601]: ERROR: syntax error at or near "("
Position: 88
ERROR: syntax error at or near "("
Position: 88
ERROR: syntax error at or near "("
Position: 88
В чем проблема? Я не понимаю
В схеме моей таблицы Asset_Store столбец
OR_ID равен int
, а Asset_ID равен varchar(100)
.
Я предполагаю, что он ожидает немного другой синтаксис ... но каков правильный синтаксис?