$insert_sth = $dbh->prepare(<<"EndOfSQL"); INSERT INTO members (member_id, name, date_joined) VALUES (?, ?, NVL(?, SysDate)) EndOfSQL $insert_sth->execute(1, 'Bob', '2001-08-15'); # Bob actually joined yesterday $insert_sth->execute(2, 'Tom', undef); # Tom is joining now