#!/usr/bin/perl use strict; use warnings; use DBI qw(:sql_types); print $DBI::VERSION, "\n"; exit; my $dbh = DBI->connect('dbi:Oracle:db','user','pass', { AutoCommit => 0, RaiseError => 0, PrintError => 0 } ) or die "Unable to connect!: $!\n"; my $sql = qq { INSERT INTO peck_test VALUES ( ?,? ) RETURNING my_id INTO ? }; my $sth = $dbh->prepare($sql); my $id; my $name = 'Bob'; my $desc = 'Just another guy'; $sth->bind_param (1, $name, SQL_VARCHAR); $sth->bind_param (2, $desc, SQL_VARCHAR); $sth->bind_param_inout(3, \$id, SQL_NUMERIC); $sth->execute(); print "Inserted record: $id\n" if $id; $sth->finish(); $dbh->disconnect();