Help,

I have a generic table wrapper that builds inserts on the fly using
bind_param.  It works fine until it tries to insert a space filled character
variable into a NOT NULL varchar2 table column.

It then produces the error:

DBI Error string=ORA-01400: cannot insert NULL into
("FACTORY"."MENUFILE"."PROGRAM_NAME") (DBD ERROR: OCIStmtExecute)
[/home/tompkic1/cvsco/factory/trunk/library/perl_modules/Schemas/Table_wrapp
er.pm] INSERT INTO FACTORY.MENUFILE (

Here's the bind_param statement:

    my $number = 0;
    foreach my $key ( sort( keys( %{ $column_info_hash{$table_name} } ) ) ){
        $sth->bind_param( ++$number, $hashref->{$key} );
    } 

This only occurs if I use the bind_param method.  If I hardcode the entire
insert statement and surround the varchar fields in single quotes it works
fine.
But I'm hoping to find an answer that will keep the concept of the generic
table wrapper alive.

Any help would greatly appreciated.

Thank you,
Creigh Tompkins
[EMAIL PROTECTED]
IMPORTANT NOTICE:  The contents of this e-mail are confidential to the
ordinary user of the e-mail address to which it was addressed and may also
be privileged.  If you are not the addressee of this e-mail you may not
copy, forward, disclose or otherwise use it or any part of it in any form
whatsoever.  If you have received this e-mail in error please e-mail the
sender by replying to this message.

Reply via email to