sql >> Database >  >> RDS >> Oracle

Java-functie aanroepen vanuit Oracle-functie

Iets als:

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. Werk meerdere tabelkolomwaarden bij met een enkele query

  2. De database 'xxx' kan niet worden geopend omdat het versie 904 is

  3. Hoe kopieer ik gegevens van de ene tabel naar een andere nieuwe tabel in MySQL?

  4. Aantal Query vereist