Вы можете использовать логические значения в качестве параметров хранимых процедур:
procedure p (p_bool in boolean) is...
Однако вы не можете использовать логические значения в SQL, например, выберите заявления:
select my_function(TRUE) from dual; -- NOT allowed
Для числового параметра нет способа декларативно добавить к нему «проверочное ограничение», вам придется кодировать некоторую проверку, например,
procedure p (p_num in number) is
begin
if p_num not in (0,1) then
raise_application_error(-20001,'p_num out of range');
end if;
...