update records that are there in .csv file which will be given as input
You can create an external table that references the data in your CSV.
You'll need a directory object creating that points to the location on the file system; in this case MY_DIR.

CREATE TABLE update_ids_ext
(
  rec_id               NUMBER,
  update_value         VARCHAR2(100)
)
ORGANIZATION EXTERNAL
  (  TYPE ORACLE_LOADER
     DEFAULT DIRECTORY my_dir
     ACCESS PARAMETERS 
       ( RECORDS DELIMITED BY '\r\n'
      FIELDS TERMINATED BY ','
      OPTIONALLY ENCLOSED BY '"'
      MISSING FIELD VALUES ARE NULL
      (  rec_id ,
         update_value
      )
        )
     LOCATION (MY_DIR:'update_ids.csv')
  )


You can then just refer to your CSV file as if it were a table and perform an update however you like. 
I've done an example using a merge and another using an update but the choice is yours.

MERGE INTO target_table tgt
 USING (SELECT rec_id, update_value   
          FROM update_ids_ext ) src
 ON (tgt.rec_id = src.rec_id)
WHEN MATCHED THEN UPDATE SET tgt.column_value = src.update_value; 

UPDATE target_table tgt
   SET ( tgt.column_value ) = (SELECT src.update_value         
                                 FROM update_ids_ext src
                                WHERE tgt.rec_id = src.rec_id)
 WHERE EXISTS (SELECT 1 
                 FROM update_ids_ext src
                WHERE tgt.rec_id = src.rec_id)           


You probably need to look at the documentation for directory objects and external tables and possibly merge and update.