我想将计算列添加到Oracle中的全局临时表。 对于简单的表,请求运行良好。
countryId, en, es, fr
1, spain, españa, espagne
2, france, francia, france
3, Italy, italia, italie
但对于临时的,它拒绝使用alter table ma_table add ma_column as (column1*column2);
。
有没有办法将新的计算列添加到Oracle中的临时表?
答案 0 :(得分:2)
我刚刚找到了怎么做, 我添加了带有alter request
的列alter table ma_table add ma_column [type];
然后创建一个执行插入请求时执行更新请求的脚本
update ma_table set ma_column=(colonne1*colonne2);
答案 1 :(得分:0)
错误信息非常强调。 ORA-54010: expression column is not supported for a temporary table.
" alter table ma_table add ma_column;"当" as"请求被拒绝。
AS
是创建虚拟列的必要语法。但不是它的行为语法。这个documentation is quite clear:
"您只能在关系堆表中创建虚拟列。索引组织,外部,对象,集群或临时表不支持虚拟列。"
在这种情况下,平台的限制胜过您的项目要求。