Customer Portal

Refreshing a data warehouse

Comments 2

  • Avatar
    oldforum
    0
    Comment actions Permalink
    Just used your approach and it works quite well!
    Not other question:

    When unloading data from mySQL i get the following warning:
    WARN [DB_INPUT_TABLE1] - SQLException when closing statement
    java.sql.SQLException: Can't call commit when autocommit=true
    at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:914)
    at com.mysql.jdbc.Connection.commit(Connection.java:2248)
    at org.jetel.connection.SQLDataParser.close(SQLDataParser.java:277)
    at org.jetel.component.DBInputTable.run(DBInputTable.java:194)
    at java.lang.Thread.run(Unknown Source)

    Is this a bug from the driver?
    How can I solve this?
    Also when validating the query on the DB Input i get the following message:
    Query invalid: Streaming result set com.mysql.jdbc.RowDataDynamic@b6994f is still active. No statements may be issued when any streaming result sets are open and in use on a given connection. Ensure that you have called .close() on any active streaming result sets before attempting more queries.

    but then i get results on the query. been "googling" about this and seems like a bug from J connector! any solutions on this?


    Best Regards

    Lucas
  • Avatar
    oldforum
    0
    Comment actions Permalink
    Hi !

    One option would be to use DataIntersection component or simply a Join component.
    You start unloading all data from MS Acess and MySQL at the same time - sort them or make sure you user "order by" clause.

    I assume your sorce data has some kind of unique key which is also propagated to target. Uset that key to find new records in flow from MS Access which have no corresponging records in MySQL - such records should be then save to DB. But make sure you do it in separathe phases - don't read data from DB and save data there at the same time.

    David.

Please sign in to leave a comment.