Du tilldelar flera rader som returneras från tabellen till en variabel, som kommer att misslyckas.
Du kan helt enkelt använda en CURSOR FOR LOOP vilket skapar en implicit markör och du kan gå igenom namnen:
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;
/