i have my variable declared as:

l_rowid urowid;

and i want to execute a dynamic update using rowid as a bind variable:

for cur in (select rowid, ....) loop

l_rowid := cur.rowid;

execute immediate 'update sometable set somecolumn = 1 where rowid=:row_id' using l_rowid;

end loop;

something's wrong though and i get oracle error (invalid rowid).

what is the correct way of doing this?