BLOBs & JDBC Via OCI8

From: Osama Alrefai <Alrefai_Osama_H_at_email.cat.com>
Date: Thu, 13 Apr 2000 09:12:14 -0500
Message-ID: <38F5D5BD.233A3D14_at_email.cat.com>



Hello,

    I am trying to use BLOB's (for Insertion, retrieval, and deletion purposes). I have to do that using JDBC only by invoking some OCI8 calls. When I try to connect to the database via the (jdbc:oracle:oci8) driver, I get the following exception:


Throwable thrown
java.sql.SQLException: ORA-06401: NETCMN: invalid driver designator

 java.lang.Throwable(java.lang.String)
 java.lang.Exception(java.lang.String)
 java.sql.SQLException(java.lang.String, java.lang.String, int)
 void oracle.jdbc.dbaccess.DBError.throwSqlException(java.lang.String, java.lang.String, int)
 int oracle.jdbc.oci8.OCIDBAccess.check_error(int, oracle.jdbc.oci8.OCIDBStatement)
 oracle.jdbc.dbaccess.DBConversion
oracle.jdbc.oci8.OCIDBAccess.logon(java.lang.String, java.lang.String, java.lang.String, java.util.Properties)
 oracle.jdbc.driver.OracleConnection(oracle.jdbc.dbaccess.DBAccess,
java.lang.String, java.lang.String, java.lang.String, java.lang.String,
java.util.Properties)
 java.sql.Connection

oracle.jdbc.driver.OracleDriver.getConnectionInstance(oracle.jdbc.dbaccess.DBAccess,
java.lang.String, java.lang.String, java.lang.String, java.lang.String,
java.util.Properties)
 java.sql.Connection

oracle.jdbc.driver.OracleDriver.connect(java.lang.String, java.util.Properties)
 java.sql.Connection
java.sql.DriverManager.getConnection(java.lang.String, java.util.Properties)
 java.sql.Connection
java.sql.DriverManager.getConnection(java.lang.String, java.lang.String, java.lang.String)
 void testingenvironment.Ex1_45.main(java.lang.String [])

Could you please help me find how to connect to the database, insert a BLOB (including insertion of an empty BLOB first), read the BLOB, and finally delete the BLOB. Here is the code I wrote for connecting to the database. The line with the (getConnection) statement is the place where the above exception gets thrown. Please help me. This is very very urgent.

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
import java.io.InputStream;
import java.io.OutputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;

import java.sql.SQLException;
import java.sql.Statement;
import oracle.jdbc.driver.*;
import oracle.sql.*;

public class Ex1_45 {

public static void main(java.lang.String[] args) {  try {
// Insert code to start the application here.
// Load the Oracle JDBC driver:

  Class.forName ("oracle.jdbc.driver.OracleDriver");
// Connect to the database:

  Connection conn = DriverManager.getConnection ("jdbc:oracle:oci8:_at_<DBhost machine> :<port>:<oradev>", "<u_id>", "<passwd>");
  conn.setAutoCommit (false);
// Create a Statement:

  Statement stmt = conn.createStatement ();  } catch(Throwable th) {
  System.out.println("Throwable thrown");   th.printStackTrace();
 }
}
}

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

FYI: I copied and pasted this code from the "Oracle8i Application Developer's Guide - Large Objects (LOBs), Volume 2" book Received on Thu Apr 13 2000 - 16:12:14 CEST

Original text of this message