ITable[] tables = dataSet.getTables();
ITable[] tables = getTables(dataSet);
    public void execute(IDatabaseConnection connection, IDataSet dataSet)            throws DatabaseUnitException, SQLException    {        IStatementFactory factory = connection.getStatementFactory();        ITable[] tables = dataSet.getTables();//        String[] tableNames = getTableNames(dataSet);        // for each table        for (int i = 0; i < tables.length; i++)        {            // do not process empty table            ITable table = tables[i];            if (table.getRowCount() == 0)            {                continue;            }//            String tableName = tableNames[i];            ITableMetaData metaData = getOperationMetaData(connection,                    table.getTableMetaData());            OperationData operationData = getOperationData(                    connection.getSchema(), metaData);            IPreparedBatchStatement statement = factory.createPreparedBatchStatement(                    operationData.getSql(), connection);            try            {                Column[] columns = operationData.getColumns();                // for each row                int rowCount = table.getRowCount();                for (int j = 0; j < rowCount; j++)                {                    int row = _reverseRowOrder ? (rowCount - 1 - j) : j;                    // for each column                    for (int k = 0; k < columns.length; k++)                    {                        Column column = columns[k];                        statement.addValue(table.getValue(row,                                column.getColumnName()), column.getDataType());                    }                    statement.addBatch();                }                statement.executeBatch();                statement.clearBatch();            }            finally            {                statement.close();            }        }    }