ORA-54025: Virtual column cannot have a default value
Cause: Attempted to alter a virtual column to have a default value.
Action: This is not valid, change the DDL.
ORA-54025:虚拟列不允许有默认值
ORA-54025: virtual column cannot have a default value
这是一个常见的差错,指出虚拟列不允许指定默认值。它是由以下条件之一所引起的:
(1)尝试在CREATE TABLE语句中指定虚拟列的默认值
(2)尝试将虚拟列的默认值更改为ALTER TABLE语句
在创建表的语句中指定虚拟列的默认值;或者,使用ALTER TABLE语句来更改虚拟列的默认值。
1、如果要更改虚拟列的默认值,则应使用ALTER TABLE MODIFY语句。如果要删除虚拟列的默认值,则可以使用ALTER TABLE MODIFY statement的MODIFY子句中的DEFAULT NULL语句;
2、为了解决此问题,请勿在CREATE TABLE语句中指定虚拟列的默认值;
3、如果需要,可以使用CREATE TABLE语句来创建常规的列,而不是虚拟列,然后添加DEFAULT值;
4、或者,也可以对某个虚拟列使用触发器来实现某种默认行为。