sql >> Database teknologi >  >> RDS >> Oracle

Kald Java-funktionen fra Oracle-funktionen

Noget som:

create or replace and compile java source named "ErrorMessage" 
as 
  import java.util.zip.Inflater;
  import java.lang.Byte;
  import java.sql.Blob;

  public class ErrorMessage {
    public static String uncompressMessage( Blob data, int uncompressedLength ){
      String uncompData2 = null;
      try{
        final long size = data.length();
        final byte[] cdata = data.getBytes( 0L, (int) size );
        Inflater inflater = new Inflater();
        inflater.setInput( cdata );
        byte[] uncompData = new byte[uncompressedLength];
        int n = inflater.inflate(uncompData);
        uncompData2 = new String( uncompData, "UTF-8" );
        inflater.end();
      }catch (Exception e){
        e.getMessage();
      }
      return uncompData2;
    }
}
/

create or replace function getErrorMessage(msgdata blob, msgdatalength number) return varchar2
as language java
name 'ErrorMessage.uncompressMessage(java.sql.Blob,int) return java.lang.String';



  1. valgfri parametre i SQL Server lagret proc?

  2. uinitialiseret konstant MysqlCompat::MysqlRes (ved hjælp af mms2r gem)

  3. Er citater omkring tabeller og kolonner i en MySQL-forespørgsel virkelig nødvendige?

  4. Vælg kolonneværdi, hvis ikke null, ellers brug en anden kolonneværdi