[ In no particular order ] Public Oracle docs: http://www.csis.gvsu.edu/GeneralInfo/Oracle/nav/docindex.htm LOBs http://www.csis.gvsu.edu/GeneralInfo/Oracle/appdev.920/a96595/dci06mlt.htm http://technet.oracle.com/tech/oci/htdocs/faq.html#1000425 Convert most of test.pl into standard t/*.t tests. Resolve imp_sth->stmt_type != OCI_STMT_SELECT issue - add an attribute for it? connect with $user = "/ as sysdba" etc as per SQL*Plus Move urls from README into Oracle.pm Change all uses of perl global na (SvPV & sv_2pv) to local variables for better thread safety. Test script for bind type / field type / length / null interactions of char/varchar types. add docs about OPS$ login Add hint about SQL*Plus commands if execute gets an ORA-0900 invalid SQL statement? Maybe just if common SQL*Plus command word is first word. Support SERVICE_NAME in new connect syntax (allow inplace of SID) warn (trace_msg?) if ORACLE_HOME changes after first connect relates to Apache::DBI scenario where changing ORACLE_HOME upsets existing connections. PRECISION for oci7 on VARCHAR etc Detect "Error while trying to retrieve text for error ORA-XXXX" and add "refer to oracle docs or use 'oerr ora XXXX'". blob_read for oci8 with LONGs $sth = $dbh->prepare("select ... for update"); $dbh->commit; $sth->execute; # fails ? auto-re-prepare? ora_bind() failed err = ORA-01026: multiple buffers of size > 4000 in the bind list (DBD: oexec error) http://outside.organic.com/mail-archives/dbi-users/Nov1997/0116.html Handle PL/SQL arrays. Non-blocking Tests: RAW types at max length http://www.oracle-users.com/html/freeware.html http://freespace.virgin.net/j.hatcher/ociwrap.htm