PLS-00103: Rencontrés le symbole « fin de fichier » dans le bloc de simple mise à jour
Question
L'instruction Oracle suivante:
DECLARE ID NUMBER;
BEGIN
UPDATE myusername.terrainMap
SET playerID = :playerID,tileLayout = :tileLayout
WHERE ID = :ID
END;
me donne l'erreur suivante:
ORA-06550: line 6, column 15:
PL/SQL: ORA-00933: SQL command not properly ended
ORA-06550: line 3, column 19:
PL/SQL: SQL Statement ignored
ORA-06550: line 6, column 18:
PLS-00103: Encountered the symbol "end-of-file" when expecting one of the following:
( begin case declare end exception exit for goto if loop mod
null pragma raise return select update while with
<an identifier> <a double-quoted>
Je suis à peu près à une perte. Cela semble être une déclaration assez simple. Si elle aide tout, j'ai eu une déclaration similaire qui a effectué une instruction INSERT qui a utilisé au travail, mais aujourd'hui a été de me donner le même message.
La solution
Ajouter un point-virgule après where id=:id
Autres conseils
Vous avez un certain nombre de problèmes ici:
-
manquant point-virgule (comme scie MJB)
-
:ID
fait référence à une variable en liée, de sorte que votre déclaration locale (DECLARE ID NUMBER;
) n'est pas utilisé. -
Vous utilisez un nom de variable qui (apparemment) est le même nom que Colum dans votre table. Si vous essayez d'utiliser votre variable
ID
locale, la requête ne peut toujours pas utiliser sauf si vous utilisez une étiquette de bloc.
Cela dit, il semble que vous envoyez ID dans une variable de liaison de toute façon, il est donc plus probable que vous devriez juste retirer la déclaration du bloc.
En plus de la précédente, vous devez éviter les espaces entre le fonctionnement égale,: et la valeur comme ceci:
SQL> BEGIN
2 IF x > y THEN high := x; END IF; -- correct
3 IF x > y THEN high := x; ENDIF; -- incorrect
4 END;
5 /
END;
ERROR at line 4:
ORA-06550: line 4, column 4:
PLS-00103: Encountered the symbol ";" when expecting one of the following:
if
visitez le site Web pour en savoir plus .... https://docs.oracle.com/cd/B28359_01 /appdev.111/b28370/fundamentals.htm#LNPLS002