> p_DateTime;改用> p_DateTime;

解决方案 »

  1.   

    里面不存在标点符号的错误问题,如果有,也是我输入的错误,这一点可以排除.
    在Oracle的console上编译时,提示有错误,但错误原因无法看到(不知道是不是因为用盗版,赫赫),出现错误的一句是:
    DECODE(t1.ObjectRange, 1, (SELECT ts.DeptName FROM Dept ts WHERE ts.DeptID = 1),
                           2, (SELECT ts.ClassName FROM Class_Info ts WHERE ts.ClassID = 2),
                           '未知') ObjectName,
    修改成
    DECODE(t1.ObjectRange, 1, '学生','未知') ObjectName,
    就没有问题了,不知道是不是因为Decode函数中不能使用Select语句(应该不会,9i中就没有问题)
    各位大虾在帮着看看,谢谢各位的热心帮忙
      

  2.   

    在哪里编译的过程,如果用sqlplus就用show error来显示一下错误信息!
    在pl/sql developer就直接可以看到错误信息了!copy出来就可以了!
    你单独用一个SQl有这样的选择试一下,看是不是8i不支持就清楚了!
      

  3.   

    DECODE(t1.ObjectRange, 1, (SELECT ts.DeptName FROM Dept ts WHERE ts.DeptID = 1),
                           2, (SELECT ts.ClassName FROM Class_Info ts WHERE ts.ClassID = 2),
                           '未知') ObjectName,
    这个在8i里面也是支持的
    但在函数过程里面你可能需要用动态sql来实现.
    你试试!