【问题标题】:XMLType View column not recognised无法识别 XMLType 视图列
【发布时间】:2013-08-10 08:50:23
【问题描述】:

在将我的 6i 表单移植到 11g 之前(作为现代化计划的一部分),我还在测试添加一项新功能,该功能需要创建包含 XML 的文本文档。我在底层数据库 (9.2.0.1.0) 中创建了一个 XMLType 视图,以将信息公开为 XML。 我试图在表单中使用 TEXT_IO 内置(我知道我需要在 11g 中用 WebUtils CLIENT_TEST_IO 替换它)

不管怎样,这是我写的WHEN-BUTTON_PRESSED触发代码,但它不会编译。

在 Win7 32 位(VMWare 虚拟)上运行的 Forms Builder 11.1.2.0.0。

BEGIN
 DECLARE
 IN_FILE TEXT_IO.FILE_TYPE;
 XMLDOC VARCHAR2(4000);
 CURSOR C IS SELECT X.SYS_NC_ROWINFO$.GETSTRINGVAL() FROM SS_CDRS_EXPORT_COMP_XML2 X;
 BEGIN
  IN_FILE := TEXT_IO.FOPEN('C:\CDRSCOMP.XML','W'); 
  FOR C1 IN C LOOP
   TEXT_IO.PUT_LINE(IN_FILE, C1.OBJECT_VALUE.GETSTRINGVAL());
   NULL;
  END LOOP;
  TEXT_IO.FCLOSE(IN_FILE);
  EXCEPTION
  WHEN Others THEN
   NULL;
  TEXT_IO.FCLOSE(IN_FILE);
 END;
END;

它给出了错误:

no column 'SYS_NC_ROWINFO$' in table

运行语句:

SELECT X.SYS_NC_ROWINFO$.GETSTRINGVAL() FROM SS_CDRS_EXPORT_COMP_XML2 X;

在 SQLPlus (11.1.0.7.0) 中,它可以正常工作并返回行。

【问题讨论】:

    标签: sql xml oracle11g oracleforms


    【解决方案1】:

    已解决。我将视图更改为类似

    create or replace VIEW SS_CDRS_EXPORT_COMP_XML AS
    select 
    XMLELEMENT("CM_DATA",
     XMLFOREST(TRIM(V.COMPNAME) AS COMPANYNAME, 
     ....
     ))
    AS "RESULT"
    

    来自 v;

    按钮中的行按下代码到..

    CURSOR C IS SELECT X.RESULT.GETSTRINGVAL() FROM SS_CDRS_EXPORT_COMP_XML X;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-11-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多