1
votes

PLS-00103: J'ai rencontré le symbole ")" en s'attendant à l'une des situations suivantes: (

Je suis un débutant en oracle et voici ma définition de fonction et ma partie d'invocation. Je n'arrive pas à comprendre l'erreur que j'obtiens lorsque j'appelle la fonction. S'il vous plaît, aidez-moi à rectifier mon code.

ORA-06550: ligne 4, colonne 56: PLS-00103: J'ai rencontré le symbole ")" lorsque vous attendez l'un des éléments suivants: (

create or replace function totalcustomers
RETURN number
IS
total number:=0;
BEGIN
select count(*) into total from customers;
RETURN total;
END;
/

declare sum number;
BEGIN
sum := totalcustomers();
dbms_output.put_line('Total number of customers '||sum);
END;
/


0 commentaires

3 Réponses :


1
votes

N'utilisez pas sum comme variable qui est un mot-clé réservé dans Oracle.


0 commentaires

0
votes

La somme est une fonction, elle attend donc le paren ouvert. Renommez la variable.


0 commentaires

0
votes

La partie d'invocation de fonction lançait l'erreur mentionnée, car "sum" pourrait être un mot clé prédéfini dans oracle. La modification de la variable comme suit a aidé.

declare x number;
BEGIN
x:=totalcustomers();
dbms_output.put_line(' Total number of customers: '||x);
END;
/

Résultat: Relevé traité. Nombre total de clients: 6


0 commentaires