Search code examples
kdb

kdb q - oracle access with babel fails


I have installed babel (interface between kdb and other dbs such as oracle) from here. After copying the oracle8 driver to the babel/lib folder I run the command from the babel documentation page

java -Xmx1024m -Doracle.jdbc.defaultRowPrefetch=10000 
      -cp "babel.jar:lib/ojdbc8.jar" de.skelton.babel.Babel 6868 oracle.jdbc.OracleDriver

which gives me

$ java -Xmx1024m -Doracle.jdbc.defaultRowPrefetch=10000 -cp "babel.jar:ojdbc8.jar" de.skelton.babel.Babel 6868 oracle.jdbc.OracleDriver
Error: Could not find or load main class de.skelton.babel.Babel

I tried to run the alternative

java -Xmx1024m -jar babel.jar 6868 oracle.jdbc.OracleDriver

which gives

Babel for kdb+ v1.34 2014.03.24

Error: could not load jdbc driver. Exiting.

I am running this on Windows 7 and have the following jre installed

java version "1.8.0_162"
Java(TM) SE Runtime Environment (build 1.8.0_162-b31)
Java HotSpot(TM) 64-Bit Server VM (build 25.162-b31, mixed mode)

Solution

  • For windows, perhaps you need to use a semi-colon as separator in the classpath arg? e.g.

    java -Xmx1024m -Doracle.jdbc.defaultRowPrefetch=10000 -cp "babel.jar;lib/ojdbc8.jar" de.skelton.babel.Babel 6868 oracle.jdbc.OracleDriver