Recursively search the string from a column in no. of files

i have a file named keyword.csv(contains around 8k records) which contains a no. of columns.
The 5th column contains all the keywords.
I want to recursively search these keywords in all .pl files(around 1k) and display the filename....Afterthat i will use the filename and some of the column from the keyword.csv to update the database.

I am using below code...but it is not working as keyword.csv contains a no of columns...

find . -type f -name "*.pl" | xargs fgrep -f keyword.csv

Could you please let me know how to handle it.
Thank you in advance.

Please use code tags as required by forum rules!

How about (untested!)

awk 'FNR == NR {X[$5]; next}
     FNR == 1  {found = 0}
     !found    {for (i in X) if (match ($0, i) {print FILENAME; found = 1; break }
    ' FS="," keyword.csv FS=" " *.pl

If your awk has sth like nextfile , use that instead of break ...

Thank you Rudic..
I tried your code but it is giving error as below.

$ awk 'FNR == NR {X[$5]; next}
     FNR == 1  {found = 0}
     !found    {for (i in X) if (match ($0, i) {print FILENAME; found = 1; break }
    ' FS="," keyword.csv FS=" " *.pl
> > > awk: syntax error near line 3

awk: bailing out near line 3

I am using SunOS.
And also just now i modified the question..that i want the filename as well as 10th and 5th coloumn in the output..

Please let know how to do it.

Citing Don Cragun: