CREATE PROCEDURE findStringInTable (stringToFind VARCHAR2) IS sqlCommand VARCHAR2(8000); wCommand VARCHAR2(8000); columnName VARCHAR2(30); CURSOR MATCH IS SELECT COLUMN_NAME FROM ALL_TAB_COLUMNS WHERE TABLE_NAME = 'PPROFILES'; BEGIN sqlCommand := 'SELECT * FROM PPROFILES WHERE'; wCommand := ''; OPEN MATCH; FETCH MATCH INTO columnName; WHILE MATCH%FOUND LOOP IF wCommand != '' THEN wCommand := wCommand + ' OR'; END IF; wCommand := wCommand + ' ' + columnName + ' LIKE ''' +stringToFind + ''''; FETCH MATCH INTO columnName; END LOOP; CLOSE MATCH; sqlCommand := sqlCommand + wCommand; EXECUTE IMMEDIATE (sqlCommand); EXCEPTION WHEN NO_DATA_FOUND THEN DBMS_OUTPUT.PUT_LINE ('No Data found'); END;