0
SQL> CREATE or REPLACE FUNCTION custord (custNo IN number)
2 RETURN NUMBER
3 IS cust_tot NUMBER(11,2);
4 BEGIN
5 SELECT sum(cust_total_field)
6 INTO cust_tot
7 FROM ord
8 WHERE cust_number_field=custNo;
9 RETURN(cust_tot);
10 END;
11/
Warning: Function created with compilation errors.
SQL> begin
2 dbms_output.put_line('customer 102 total is ' || custord(102));
3 end;
4/
dbms_output.put_line('customer 102 total is ' || custord(102));
*
ERROR at line 2:
ORA-06550: line 2, column 52:
PLS-00905: object CIS605.CUSTORD is invalid
ORA-06550: line 2, column 3:
PL/SQL: Statement ignored
SQL>
我看到错误但对象cis605有效。任何想法我失踪?我看到错误但帐户有效
使用ORD表创建一个名为custord的存储函数,它将使用将返回指定客户ID TOTAL字段的总和的客户ID(CUSTID)。 当你的函数被存储时,运行以下SQL: begin dbms_output.put_line('customer 102 total is'|| custord(102)); 结束;
你的输出应该是这样的: 结果 解释 描述 保存SQL 历史
客户共102件为27775.5
语句处理。
你对表ORD有特权吗? – Ollie