use strict; use warnings; use CGI; use DBI; my $q = CGI->new; my $db = DBI->connect( ... ); # see DBD::Oracle for details END { $db and $db->disconnect }; my $insert = $db->prepare( <errstr; insert into tabname (colname) values (?) END_SQL if (defined(my $data = $q->param('upload'))) { $insert->execute($data) or die $insert->errstr; }