Thanks Chris for your prompt reply!

With your idea, the NO_DATA_FOUND error will be fixed. but what if the id returns more than 1 row of data? will this be fixed too?

Here is what I got;
ORA -01422:exact fetch returns more than requested number of rows

Thanks.