GeezerVisonThe World Wide Web, restored to 800 pixels of glory. |
| Home|About|Gaming cabinet|Archives|How it works|Starter sites |
GeezerVison is showing github.com — utPLSQL-java-api/src/main/java/org/utplsql/api/DBHelper.java at v3.1.1 · utPLSQL/utPLSQL-java-api Expand file tree/ Copy pathDBHelper.javaMore file actions 117 lines (102 loc) · 3.81 KB / Copy pathDBHelper.javaFile metadata and controls117 lines (102 loc) · 3.81 KB 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 package org.utplsql.api; import oracle.jdbc.OracleTypes; import org.utplsql.api.exception.UtPLSQLNotInstalledException; import java.sql.*; /** * Database utility functions. */ public final class DBHelper { private DBHelper() {} /** * Return a new sys_guid from database. * @param conn the connection * @return the new id string * @throws SQLException any database error */ public static String newSysGuid(Connection conn) throws SQLException { assert conn != null; try (CallableStatement callableStatement = conn.prepareCall("BEGIN ? := sys_guid(); END;")) { callableStatement.registerOutParameter(1, OracleTypes.RAW); callableStatement.executeUpdate(); return callableStatement.getString(1); } } /** * Return the current schema name. * @param conn the connection * @return the schema name * @throws SQLException any database error */ public static String getCurrentSchema(Connection conn) throws SQLException { assert conn != null; try (CallableStatement callableStatement = conn.prepareCall("BEGIN ? := sys_context('userenv', 'current_schema'); END;")) { callableStatement.registerOutParameter(1, Types.VARCHAR); callableStatement.executeUpdate(); return callableStatement.getString(1); } } /** Returns the Frameworks version string of the given connection * * @param conn Active db connection * @return Version-string of the utPLSQL framework * @throws SQLException any database error */ public static Version getDatabaseFrameworkVersion( Connection conn ) throws SQLException { assert conn != null; Version result = new Version(""); try (PreparedStatement stmt = conn.prepareStatement("select ut_runner.version() from dual")) { ResultSet rs = stmt.executeQuery(); if ( rs.next() ) result = new Version(rs.getString(1)); rs.close(); } catch ( SQLException e ) { if ( e.getErrorCode() == UtPLSQLNotInstalledException.ERROR_CODE ) throw new UtPLSQLNotInstalledException(e); else throw e; } return result; } /** Returns the Oracle database Version from a given connection object * * @param conn Connection-Object * @return Returns version-string of the Oracle Database product component * @throws SQLException any database error */ public static String getOracleDatabaseVersion( Connection conn ) throws SQLException { assert conn != null; String result = null; try (PreparedStatement stmt = conn.prepareStatement("select version from product_component_version where product like 'Oracle Database%'")) { ResultSet rs = stmt.executeQuery(); if ( rs.next() ) result = rs.getString(1); } return result; } /** * Enable the dbms_output buffer with unlimited size. * @param conn the connection */ public static void enableDBMSOutput(Connection conn) { assert conn != null; try (CallableStatement call = conn.prepareCall("BEGIN dbms_output.enable(NULL); END;")) { call.execute(); } catch (SQLException e) { System.out.println("Failed to enable dbms_output."); } } /** * Disable the dbms_output buffer. * @param conn the connection */ public static void disableDBMSOutput(Connection conn) { assert conn != null; try (CallableStatement call = conn.prepareCall("BEGIN dbms_output.disable(); END;")) { call.execute(); } catch (SQLException e) { System.out.println("Failed to disable dbms_output."); } } } |
| You are visitor 01402503 — GeezerVison does not store the pages you look up. Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required. |