man Alzabo::Runtime::InsertHandle () - A handle representing an insert


Alzabo::Runtime::InsertHandle - A handle representing an insert


 my $handle =
         ( columns => [ $table->columns( 'name', 'job' ) ] );

 my $faye_row =
     $handle->insert( values =>
                      { name => 'Faye',
                        job => 'HK Pop Chanteuse' } );

 my $guesch_row =
     $handle->insert( values =>
                      { name => 'Guesch',
                        job => 'French Chanteuse and Dancer' } );


This object is analogous to a DBI statement handle, and can be used to insert multiple rows into a table more efficiently than repeatedly calling CWAlzabo::Runtime::Table->insert().


Objects of this class provide one public method:


This method is used to insert a new row into a table.

It accepts the following parameters:

* values
This should be a hash reference containing the values to be inserted into the table. If no value is given for a primary key column and the column is sequenced then the primary key will be auto-generated. If values are not provided for other columns which were given when CWAlzabo::Runtime::Table->insert_handle was called, this method first checks to see if a value was provided for the column when CWAlzabo::Runtime::Table->insert_handle was called. If none was provided, then the column's default value is used. If column values were passed to CWAlzabo::Runtime::Table->insert_handle, then these can be overridden by values passed to this method. It is not possible to override column values that were given as SQL functions when CWAlzabo::Runtime::Table->insert_handle was called.

This method returns a new CWAlzabo::Runtime::Row object.

Throws: CWAlzabo::Exception::Logic, CWAlzabo::Exception::Params