Oracle中建立物化视图报错

Oracle中建立物化视图报错

  今天在建立视图的时候,报了一个错:ORA-01723: zero-length columns are not allowed。

  建视图的语句:

create
materialized
view VW_XX
refresh force on demand
as
select '' f_a,b f_b from xx

根据后面的语句创建视图,都是可以的,但是根据查询语句创建物化视图就出现错误了。网上找了一下,原因是:ORA-01723是ORACLE规定因为列的长度最小应该是1。

  物化视图和视图类似,反映的是某个查询的结果,但是和视图仅保存SQL定义不同,物化视图本身会存储数据,因此是物化了的视图。

解决办法:把sql中的‘’替换成 CAST(null AS VARCHAR2(10))即可。

create
materialized
view VW_XX
refresh force on demand
as
select CAST(null AS VARCHAR2(2)) f_a,b f_b from xx
上一篇:js 设置Cookie 在PHP中读取(大师手法)


下一篇:开发常用到的terminal命令