Присвоявате множество редове, върнати от таблицата, на променлива, което ще се провали.
Можете просто да използвате КУРСОР ЗА ЦИКЪЛ което ще създаде скрит курсор и ще можете да преминете през имената:
CREATE OR REPLACE PROCEDURE sp_market IS
BEGIN
FOR i IN (
SELECT field_name
FROM pld_medicare_config
)
LOOP
-- Your logic goes here
dbms_output.put_line(i.field_name);
END LOOP;
END;
/