Hi Sakshi,
As per your 1st issue, it seems the error occurs when data is not present in the table. So without handling the issue by exception codes, you can use a check indicator and allow to execute the rest code if the check indicator is true or else send error output.
Ex:-
DECLARE CHECK TINYINT
BEGIN
SELECT COUNT(*) INTO CHECK WHERE......
IF CHECK >0 THEN
<EXECUTE CODE>
ELSE
ERROR MESSGAE
END IF;
END