Oracle SQL, Procédures Stockées Erreur de Doublons et de Plusieurs Lignes

Je suis en train de créer une procédure stockée ORACLE SQL, mais il continue à jeter de l'erreur:

Error(1,1): PLS-00410: duplicate fields in RECORD,TABLE or argument list are not permitted

Je ne vois pas des champs en double, donc je me demandais pourquoi ce qui se passait (procédure ci-dessous). Également des procédures stockées ne semblent autoriser les requêtes à retourner une ligne, est-il possible de le faire retourner plus d'une ligne?

J'ai vu beaucoup de questions concernant le renvoi de plusieurs lignes, mais aucun d'eux n'était que trop clair. J'ai aussi besoin de plusieurs procédures stockées, donc je me demandais si il pourrait y avoir un cliquetis de variables et autres joyeusetés.

CREATE OR REPLACE PROCEDURE ARTIST_CHECK(
  p5_checkartist IN VARCHAR2,
  p5_artist OUT TESTTABLE.artist%TYPE,
  p5_thisweekpos OUT TESTTABLE.thisweekpos%TYPE,
  p5_lastweekpos OUT TESTTABLE.lastweekpos%TYPE,
  p5_title OUT TESTTABLE.title%TYPE,
  p5_artist OUT TESTTABLE.artist%TYPE,
  p5_entrydate OUT TESTTABLE.entrydate%TYPE,
  p5_entrypos OUT TESTTABLE.entrypos%TYPE,
  p5_peakpos OUT TESTTABLE.peakpos%TYPE,
  p5_totalweek OUT TESTTABLE.totalweek%TYPE,
  p5_thisweekdate OUT TESTTABLE.thisweekdate%TYPE)
  IS
BEGIN
  select t.THISWEEKPOS ,t.LASTWEEKPOS ,t.TITLE ,t.ARTIST ,t.ENTRYDATE ,t.ENTRYPOS ,t.PEAKPOS ,t.TOTALWEEK ,t.THISWEEKDATE
  into p5_thisweekpos, p5_lastweekpos, p5_title, p5_artist, p5_entrydate, p5_entrypos, p5_peakpos, p5_totalweek, p5_thisweekdate
  from(select artist as match, max(thisweekdate) as recent from testtable where upper(artist) like '%p5_checkartist%' group by artist), testtable t
  where t.ARTIST = match and t.THISWEEKDATE = recent;
END;
Le paramètre p5_artist est dupliqué

OriginalL'auteur Mocking | 2014-12-01