【问题标题】:error in dynamic sql with pivot clause带有数据透视子句的动态 sql 中的错误
【发布时间】:2014-05-17 00:10:56
【问题描述】:

我无法找出这个 plsql 块的问题:

1  declare
2  l sys_refcursor;
3  v varchar2(2000);
4  begin
5  v :=  q'[
6  select * from (
7  select  etudiant2.nom,  etudiant2.prenom,  forme ||''||session_e formesession, note
8  from etudiant2
9  )
10  pivot
11  (sum(null) for formesession in ('TP01', 'TP02', 'TP03', 'TD01', 'TD02'))]';
12  execute immediate v into l;
13* end;
SQL> /
declare
*
ERROR at line 1:
ORA-00932: inconsistent datatypes: expected - got -
ORA-06512: at line 12

这里有什么问题,我尝试了很多东西......也许'PIVOT'不适用于动态sql?

【问题讨论】:

    标签: oracle plsql sys-refcursor


    【解决方案1】:

    我认为 PIVOT 子句与您遇到的错误没有任何关系。要使用包含 SELECT 语句的字符串打开 SYS_REFCURSOR,我想你会想要使用

    OPEN L FOR V;
    

    而不是

    execute immediate v into l;
    

    分享和享受。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-11-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-10-26
      • 2018-05-15
      • 1970-01-01
      相关资源
      最近更新 更多