ITPub博客

首页 > 数据库 > Oracle > ORA-12889,ORA-23319 when creating materialized view

ORA-12889,ORA-23319 when creating materialized view

原创 Oracle 作者:cablue 时间:2011-10-12 18:19:07 0 删除 编辑

创建mv时,mv的定义会保存到sys.snap$中。
mv的next参数保存在sys.snap$的auto_fun列,此列最大长度为200.
如果next参数后面有注释,那么注释也会一并保存到auto_fun列。
所以,对于next参数的注释:

1:next参数的长度(不含next关键词)+注释的长度(注释符号’/**/’也算在内,长度为4)不能超过200,否则创建mv报错ORA-12889。
2:如果注释内含中文字符,那么1个中文字符的长度是2。1个’回车’按照1个字符计算。
3:注释只能用/**/这样的格式,不能用’--’,因为’--’会被误认为next参数的一部分而参与参数计算,此时oracle发现--’不是合法的operator,就会抛出ORA-23319,创建mv失败。

[@more@]

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/785781/viewspace-1055631/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2008-11-24

  • 博文量
    15
  • 访问量
    39418