1. 输入一个int型的数据,判断这个数是,否能被2整除,如果能被2整除,那么输出“这个数是偶数”,否则输出“这个数是奇数”。
出现如下错误:
ORA-06550: 第 6 行, 第 17 列:
PLS-00103: 出现符号 "2"在需要下列之一时:type <an identifier>
<a double-quoted delimited-identifier>
DECLARE
V_NUM NUMBER(10);
BEGIN
V_NUM := '&请输入一个int型的数据';
IF V_NUM % 2 = 0 THEN
DBMS_OUTPUT.PUT_LINE('这个数是偶数');
ELSE
DBMS_OUTPUT.PUT_LINE('这个数是奇数');
END IF;
END;
错误原因:PL/SQL或SQL中没有求余运算符,即%,只有求余函数MOD(M,N)
正确答案如下:
DECLARE
V_NUM NUMBER(10);
BEGIN
V_NUM := '&请输入一个int型的数据';
IF MOD(V_NUM,2) = 0 THEN
DBMS_OUTPUT.PUT_LINE('这个数是偶数');
ELSE
DBMS_OUTPUT.PUT_LINE('这个数是奇数');
END IF;
END;