I tried everything - from setting rowcachesize and using bind_columns and reading the DBD::Oracle documentation, but none of it made any difference. This is a seperate question as i am returning rows in a different way. The execute methods take a second which is fine, it is the fetch method that is taking the time. Thanks for the help.