I know this is one of those how long is a piece of string questions but I cannot see any difference using prepare_cached with a remote mysql or oracle database. I have code which does inserts/updates/selects - around 20 - 30 different pieces of SQL and most of them are run between a 100 and 1000 times per file I process. When I process around 10 files it takes around 4 minutes and this drops about 5s when using prepare_cached (but I thought this was too small so was within the bounds of variance running the same script multiple times anyway).
Most of the uses are like this: my $sql = q/select column from table where column2 = ?/; my $val = selectrow_array($sql, undef, $a_value); where the select returns one row. I changed this to: $s = $h->prepare_cached($sql); $s->execute($a_value); $val = $s->fetchrow_array; $s->finish; There is was specific change to prepare_cached which actually doubles the time when run to mysql compared with using prepare: select LAST_INSERT_ID(); Am I doing something wrong or are my expectations wrong. I had thought using prepare_cached would shave a lot more than 5s in 240s off. Has anyone got a concrete example of where prepare_cached is significantly faster? or I am flogging a dead horse? Martin -- Martin J. Evans Easysoft Limited http://www.easysoft.com