NAME

        XML::XMLtoSQL::DB


SYNOPSIS

        use XML::XMLtoSQL::DB;
        my $db=DB->new(dbmode=>"insertupdate", dbprint=>"dbprint");

        my $dbh=$db->DBConnect($DBLOG, $DBPASS, $DATA_SOURCE);


        my ($response, $error,$load)=$db->DBInsertUpdate(
                        datainfo=>\@inserts_data, 
                        dbconnections=>$db_connections
                        );


DESCRIPTION

        This module is hard coded for use with oracle. To change this setting edit the line 
        use DBI::Oracle to reflect your database choice
       This module is used primarily inside XMLtoSQL.pm. It is also used in the sample 
       script query_sql.cb
        DBInsertUpdate needs passed to a hash containing a arrayref to a array 
        of hashes containing the data that will be worked with, and dbconnections 
        a hashref to a hash of dbconnections keyed by handle names.
        The hashes contained in the array of data should have the folowing keys
                cols: a array of the columns that are in this table
                table: the name of the table for this data
                keys: the key columns in the table
                results: a array of row hashes containing the data for each cell 
                        in the a table row. The hashes are keyed by column name. 
                dbname: the name of the db handle that will be used.
        The hash containing the dbconnections contains blessed db connection objects keyed
        by handle names.
        The items returned by the module are message, errors, and load(if dbmode=>"sqlloader");


Options


        These are the options you can pass to DB.pm

        dbmode:  Options are 
                        insertupdate: attempts to do a update and if that fails, a insert 
                                      is done
                        insert: attempts to do a insert only
                        update: attempts to do a update only
                        sqlloader: passes back a extra varibale that will contain data 
                                   suitable for writing to a file for use with sqlloader

                default is insertupdate
        dbprint: Options are

                        db: tells the module to do the selected dbmode
                        print: simulate doing the dbmode, and add to $response the 
                               statements that would have been passed to the database
                        dbandprint: do both the operations above.
                default is db


Also see man page for

               DBIx::XML::DataLoader::XMLWriter,  and DBIx::XML::DataLoader