45 lines
1.1 KiB
Plaintext
45 lines
1.1 KiB
Plaintext
![]() |
Unused cursor parameters are misleading. Whatever the values passed to such parameters, the behavior will be the same.
|
|||
|
|
|||
|
|
|||
|
== Noncompliant Code Example
|
|||
|
|
|||
|
----
|
|||
|
cursor c_list_emp(pp_country varchar2, pp_status varchar2) is -- Noncompliant pp_status is not used
|
|||
|
select e.employee_code,
|
|||
|
p.first_name,
|
|||
|
p.last_name,
|
|||
|
e.country
|
|||
|
from persons p,
|
|||
|
join employee_list e on e.person_id = p.person_id
|
|||
|
where e.country = pp_country;
|
|||
|
----
|
|||
|
|
|||
|
|
|||
|
== Compliant Solution
|
|||
|
|
|||
|
----
|
|||
|
cursor c_list_emp(pp_country varchar2, pp_status varchar2) is
|
|||
|
select e.employee_code,
|
|||
|
p.first_name,
|
|||
|
p.last_name,
|
|||
|
e.country
|
|||
|
from persons p,
|
|||
|
join employee_list e on e.person_id = p.person_id
|
|||
|
where e.country = pp_country
|
|||
|
and e.status_code = pp_status; -- use the parameter
|
|||
|
----
|
|||
|
or
|
|||
|
|
|||
|
----
|
|||
|
cursor c_list_emp(pp_country varchar2) is -- Remove the parameter
|
|||
|
select e.employee_code,
|
|||
|
p.first_name,
|
|||
|
p.last_name,
|
|||
|
e.country
|
|||
|
from persons p,
|
|||
|
join employee_list e on e.person_id = p.person_id
|
|||
|
where e.country = pp_country;
|
|||
|
----
|
|||
|
|
|||
|
|