我有一张表 - Lead.Metadata
- 其中有一个名为meta
JSON 类型的列和一个生成的列:
cycle VARCHAR(255) AS (JSON_UNQUOTE(meta->"$.cycle"))
问题是当我这样做时UPDATE Lead.Metadata SET cycle = 'MONTHLY'
出现此错误:
错误代码:3105。表“元数据”中生成的列“cycle”指定的值是不允许的。
我不明白。循环是一个VARCHAR(255)
并且'MONTHLY'
应该适合那里。
有什么想法吗?
(此外,请注意,代码库是遗留代码库;数据库结构不是最优的,但修复这个问题是一个更大的项目)