search cancel

Execute SQL Query on Sybase Error


Article ID: 131762


Updated On:


CA Release Automation - Release Operations Center (Nolio) CA Release Automation - DataManagement Server (Nolio)


Trying to use the action: Execute SQL Query on Sybase Database Server
results in an error. The error output from action:

An error occurred during database connection establishment
Failed to initialize driver: com.sybase.jdbc3.jdbc.SybDriver

error code: 0

When reviewing the nolio_all.log file it shows us the following:

2019-05-06 16:01:22,763 [job-917507-jobServer-917507-5:Execute SQL Query on Sybase Database Server - no driver(P268247000.F268251000.E268252000):Execute SQL Query on Sybase Database Server] ERROR (com.nolio.platform.shared.datamodel.Action:221) - <u> An error occurred during database connection establishment</u><br/><b>Failed to initialize driver: com.sybase.jdbc3.jdbc.SybDriver<br>com.sybase.jdbc3.jdbc.SybDriver</b><br/>error code: 0
java.sql.SQLException: Failed to initialize driver: com.sybase.jdbc3.jdbc.SybDriver
    at com.nolio.platform.shared.util.db.DBConnectionFactory.getSybaseSQLConnection(
    at com.nolio.platform.shared.executables.actions.ExecuteSybaseSQL.createConnection(
    at com.nolio.platform.shared.executables.actions.ExecuteSQL.execute(
    at com.nolio.platform.shared.datamodel.ActionExecutionState.localExecution(
    at com.nolio.platform.shared.datamodel.ActionExecutionState.access$500(
    at com.nolio.platform.shared.datamodel.ActionExecutionState$2.execAction(
    at com.nolio.platform.shared.datamodel.ActionExecutionState.exec(
    at java.util.concurrent.Executors$
    at java.util.concurrent.ThreadPoolExecutor.runWorker(
    at java.util.concurrent.ThreadPoolExecutor$
    at com.nolio.platform.shared.flowcontrol.LocalFlowController$JobBoundThreadFactory$
Caused by: java.lang.ClassNotFoundException: com.sybase.jdbc3.jdbc.SybDriver
    at java.lang.ClassLoader.loadClass(
    at java.lang.ClassLoader.loadClass(
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(
    at com.nolio.platform.shared.util.db.DBConnectionFactory.getSybaseSQLConnection(
    ... 13 more


CA Release Automation v6.6


The action above was running without specifying any value in the "Driver Class Name [String]" field. By default the action will attempt to use the driver class name: com.symbase.jdbc3.jdbc.SybDriver 

However, the jar file that makes this driver class available is not shipped with CA Release Automation.


There are at least two ways to go about solving this problem.
  1. Import the jar file that supplies this driver class.
  2. Use an alternative driver. To do this:
    1. Import the jar file that offers an alternative, Sybase compatible, driver. 
    2. In the action there is a "Driver Class Name [String]" field. Specify the driver class name for the alternative driver you'll be using to connect to Sybase. 

Additional Information

At the time of this writing it looks like com.sybase.jdbc3.jdbc.SybDriver is used by the jconn3.jar file. The official source for this jar file is not clear. However, it looks like there is also a jconn4.jar discussed here on Sybase's site:

At the time of this writing it looks like jtds-1.3.1.jar offers a compatible Sybase driver that uses the driver class name: net.sourceforge.jtds.jdbc.Driver