Head's Up! These forums are read-only. All users and content have migrated. Please join us at community.neo4j.com.
11-25-2019 11:39 AM
Hey all,
I've had no luck using either the command line or GUI ETL tool for pulling and mapping data directly from a Db2 database on an IBM i server.
Despite this, the possibility occurred to me of using the Neo4j ETL tool to query against a Microsoft SQL
linked server. Essentially, setting up a 'linked server' in Microsoft SQL allows you to query a different database (other than SQL Server) and the SQL Server is essentially acting as a pass-through mechanism.
Has anyone tried this before? Would it be possible? I'm wondering if perhaps my luck with the ETL tool will increase if I'm querying the data through a Microsoft SQL server.
11-29-2019 02:07 AM
Hey Mark, I have done this agains SQL in the ETL tool and APOC procedures. You have a bit more control using the procedures. I have never used it against db2, have you tried the procedures on the DB2 connection?
procedure | apoc.load.driver | apoc.load.driver(driverClass :: STRING?) :: VOID | apoc.load.driver('org.apache.derby.jdbc.EmbeddedDriver') register JDBC driver of source database |
---|---|---|---|
procedure | apoc.load.jdbc | apoc.load.jdbc(jdbc :: STRING?, tableOrSql :: STRING?, params = :: LIST? OF ANY?, config = {} :: MAP?) :: (row :: MAP?) | apoc.load.jdbc('key or url','table or statement', params, config) YIELD row - load from relational database, from a full table or a sql statement |
procedure | apoc.load.jdbcParams | apoc.load.jdbcParams(jdbc :: STRING?, sql :: STRING?, params :: LIST? OF ANY?, config = {} :: MAP?) :: (row :: MAP?) | deprecated - please use: apoc.load.jdbc('key or url','',[params]) YIELD row - load from relational database, from a sql statement with parameters |
procedure | apoc.load.jdbcUpdate | apoc.load.jdbcUpdate(jdbc :: STRING?, query :: STRING?, params = :: LIST? OF ANY?, config = {} :: MAP?) :: (row :: MAP?) | apoc.load.jdbcUpdate('key or url','statement',[params],config) YIELD row - update relational database, from a SQL statement with optional parameters |
procedure | apoc.model.jdbc | apoc.model.jdbc(jdbc :: STRING?, config = {} :: MAP?) :: (nodes :: LIST? OF NODE?, relationships :: LIST? OF RELATIONSHIP?) | apoc.model.jdbc('key or url', {schema:'', write: <true/false>, filters: { tables:, views: , columns: }) YIELD nodes, relationships - load schema from relational database |
12-02-2019 07:47 AM
@fred where exactly would you use these procedures? I'm using the Neo4j ETL GUI tool - is there a way to use them within that or are you using it within the ETL CLI tool?
11-29-2019 02:07 PM
Did you raise an issue about your DB2 server problem?
All the sessions of the conference are now available online