Database Reference
In-Depth Information
Listing 7-21. Get a Count of Rows in the Public View of Employees
rset = stmt.executeQuery(
"SELECT * FROM hr.v_employees_public" );
int cnt = 0;
while( rset.next() ) cnt++ ;
System.out.println( "Count data in V_EMPLOYEES_PUBLIC: " + cnt );
rset = stmt.executeQuery(
"SELECT COUNT(*) FROM hr.v_employees_public" );
if( rset.next() ) cnt = rset.getInt(1) ;
System.out.println( "Count data in V_EMPLOYEES_PUBLIC: " + cnt );
if( null != stmt ) stmt.close();
Selecting Encrypted Data from EMPLOYEES
Here is our textbook process for selecting encrypted data from Oracle database, Listing 7-22. It
resembles the test procedures we used in the last chapter. We pass the public key modulus and exponent
to Oracle database and receive back the encrypted artifacts of our DES secret password key. In addition,
we have an OUT parameter that is of type OracleTypes.CURSOR . We will draw on the OracleTypes.CURSOR
( ResultSet in Java) to read our data.
Listing 7-22. Java Code to Select Sensitive Data from Employees, from p_select_employees_sensitive
stmt = ( OracleCallableStatement )conn.prepareCall(
"CALL hr.hr_sec_pkg. p_select_employees_sensitive (?,?,?,?,?,?,?,?,?)" );
stmt.registerOutParameter( 3, OracleTypes.RAW );
stmt.registerOutParameter( 4, OracleTypes.RAW );
stmt.registerOutParameter( 5, OracleTypes.RAW );
stmt.registerOutParameter( 6, OracleTypes.RAW );
stmt.registerOutParameter( 7, OracleTypes.CURSOR );
stmt.registerOutParameter( 8, OracleTypes.NUMBER );
stmt.registerOutParameter( 9, OracleTypes.VARCHAR );
stmt.setString( 1, locModulus );
stmt.setString( 2, locExponent );
stmt.setNull( 3, OracleTypes.RAW );
stmt.setNull( 4, OracleTypes.RAW );
stmt.setNull( 5, OracleTypes.RAW );
stmt.setNull( 6, OracleTypes.RAW );
// This must go without saying - unsupported type for setNull
//stmt.setNull( 7, OracleTypes.CURSOR );
stmt.setInt( 8, 0 );
stmt.setNull( 9, OracleTypes.VARCHAR );
stmt.executeUpdate();
errNo = stmt.getInt( 8 );
if( errNo != 0 ) {
errMsg = stmt.getString( 9 );
System.out.println( "Oracle error 1) " + errNo +
 
Search WWH ::




Custom Search