MySQL Error number: 3764; Symbol: ER_GENERATED_COLUMN_ROW_VALUE; SQLSTATE: HY000

文档解释

Error number: 3764; Symbol: ER_GENERATED_COLUMN_ROW_VALUE; SQLSTATE: HY000

Message: Expression of generated column ‘%s’ cannot refer to a row value.

错误说明:

ER_GENERATED_COLUMN_ROW_VALUE错误的消息是:行值是使用表中的生成列无效,这个错误表明不可以在表中使用一列行为另一个列的生成列的值。这意味着,在一个表中使用一列生成另一列,是一个不可用操作。

常见案例

ER_GENERATED_COLUMN_ROW_VALUE错误通常出现在用户尝试在表中使用已存在的列作为一个对另一列的生成列的值时,也就是说我们不能使用一个列作为另一列的生成列的值。

解决方案:

要解决ER_GENERATED_COLUMN_ROW_VALUE错误,首先要确定你是否真的想使用其中一个列作为另一个列的生成列的值。如果是的,那么可以采用以下解决方案:

– 删除涉及生成列的所有语句,然后再以正确的方式重新添加。

– 如果您仍想使用生成列,则可以使用派生表,其中使用由MySQL内容构建的语句。

– 最后,您可以使用触发器或存储过程,以便在你想要的生成列值发生更改时,可以在你创建这些值所需的表中设置生成列值。

你可能感兴趣的