Bạn cần sử dụng SELECT INTO
. Ngoài ra, không có dấu ngoặc nhọn trong PL/SQL
bạn cần sử dụng THEN
và END IF
. Tôi không hoàn toàn chắc chắn những gì bạn làm với kết quả. Bạn có muốn trả lại nó không? Sau đó, bạn cần một FUNCTION
. Nó sẽ trông giống như thế này (chưa được kiểm tra):
create or replace
FUNCTION PCD_COMBAT (identifier_perso NUMBER, identifier_advers NUMBER)
RETURN NUMBER
AS
ATT_PERSO NUMBER;
OFF_PERSO NUMBER;
DEF_ADVERS NUMBER;
BEGIN
SELECT OFFENSE_PERSO
INTO OFF_PERSO
FROM PERSONNAGE
WHERE ID_PERSO = identifier_perso;
SELECT DEFENSE_ADVERSAIRE
INTO DEF_ADVERS
FROM PERSONNAGE
WHERE ID_ADVERSAIRE = identifier_advers;
ATT_PERSO := OFF_PERSO - DEF_ADVERS;
IF ATT_PERSO < 1 THEN
ATT_PERSO := 1;
END IF
RETURN ATT_PERSO;
END PCD_COMBAT;