0
在Oracle 10g R2上进行实验时,以下代码无法运行,或者我不知道该怎么做。无法编译这个小型Oracle 10g数据库函数
我期待这个函数的行将从STUDENTS
表返回,当我通过id。
CREATE OR REPLACE FUNCTION OCT.GET_Student(ID_IN NUMBER) RETURN OCT.STUDENTS%ROWTYPE
IS
TYPE REC OCT.STUDENTS%ROWTYPE;
BEGIN
SELECT * INTO REC FROM OCT.STUDENTS WHERE STUD_ID=ID_IN
EXCEPTION WHEN OTHERS THEN
DBMS_OUTPUT.PUT_LINE('ERR'||SQLCODE);
END;
预期的输出将是数据库表中的一行或两行。 现在我不能编译这个函数。
错误返回
FUNCTION OCT.GET_STUDENT
On line: 3
PLS-00103: Encountered the symbol "OCT" when expecting one of the following:
(array limited new private range record VARRAY_ char_base
number_base decimal date_base clob_base blob_base bfile_base
table ref object fixed varying opaque sparse
The symbol "range" was substituted for "OCT" to continue.
注我有上表架构和功能创建的,但有错误的正当权利。
Plz帮助我了解这里有什么问题。
“IS”是否是DECLARE?另外当声明你想要的变量名称类型(大小)的变量。这只是黑暗中的一个镜头,我从来没有看到过你放置它们的地方。 – TheOneWhoPrograms