Procédure stockée erreur ORA-06550
J'obtiens des erreurs de compilation avec ce code à l'aide de sqlplus.
Mes erreurs sont:
Avertissement: la Procédure a été créé avec des erreurs de compilation.
COMMENCER point_triangle; END;
Erreur à la ligne 1: ORA-06550: Ligne 1, colonne 7:
PLS-00905: objet POINT_TRIANGLE est pas valide
ORA-06550: ligne 1, colonne 7:
PL/SQL Déclaration ignoré
Chaque fois que je tape afficher les erreurs, il me dit il n'y a pas d'erreurs.
Voici le code.
create or replace procedure point_triangle
AS
A VARCHAR2(30);
B VARCHAR2(30);
C INT;
BEGIN
FOR thisteam in (select P.FIRSTNAME into A from PLAYERREGULARSEASON P where P.TEAM = 'IND' group by P.FIRSTNAME, P.LASTNAME order by SUM(P.PTS) DESC)
(select P.LASTNAME into B from PLAYERREGULARSEASON P where P.TEAM = 'IND' group by P.FIRSTNAME, P.LASTNAME order by SUM(P.PTS) DESC)
(select SUM(P.PTS) into C from PLAYERREGULARSEASON P where P.TEAM = 'IND' group by P.FIRSTNAME, P.LASTNAME order by SUM(P.PTS) DESC);
LOOP
dbms_output.put_line(A|| ' ' || B || ':' || C);
END LOOP;
END;
/
c'est supposer de mettre tous les joueurs dans A et B, avec leurs points de leur carrière à l'équipe dans le C. je sais que les requêtes de travail, tout simplement pas dans la procédure.
- Qu'est-ce que
thisteam
? - C'est un élément nécessaire pour une boucle for.
- Faut-il déclarer?
- Non, je l'ai utilisé plus haut dans mon code comme ça pour une fonction. Où il apparaît est l'endroit où elle est déclarée.
- ce curseur est pas valide, le into devrait disparaître et au lieu d'une instruction FETCH doit apparaître par la suite.
Vous devez vous connecter pour publier un commentaire.
Pourriez-vous essayer celui-ci: