Oracle数据库如何给列设置永久值函数?

Oracle database how to set permanent value function to column?

我正在使用 Oracle 11g express 和 SqlDeveloper 4.0。3.In我的数据库有一个 table 名为 TABLE1,如下所示:

   ID   A    B   C
   1    3    2   null
   2    1    2   null

我还有一个 java 程序可以在 table ID、A、B 上插入值。 所以我希望数据库像函数一样记住添加列 A 和 B 并将其设置为 C 而不是像这样在 Developer 上的查询中手动执行: 更新表 1 设置 C=A+B,其中 C 为空;

如何做到?

我的猜测是您想删除现有的物理列 C 并创建一个新的虚拟列 C

ALTER TABLE table1
  DROP COLUMN c;

ALTER TABLE table1
  ADD c GENERATED ALWAYS AS (a+b);