sql >> Databáze >  >> RDS >> Mysql

Jak zacházet s BLOB a CLOB v olingo v2?

Pokud používáte MySQL, vyžaduje to další ExceptionInterceptor spolu s implementací BLOB. Můžete mít vlastní implementaci ExceptionInterceptor a použijte jej k inicializaci pole Blob.

Kód, jak toho dosáhnout, by byl následující

import java.sql.Blob;
import java.sql.Clob;
import java.util.Properties;

import org.apache.olingo.odata2.jpa.processor.api.OnJPAWriteContent;
import org.apache.olingo.odata2.jpa.processor.api.exception.ODataJPARuntimeException;

import com.mysql.cj.exceptions.ExceptionInterceptor;
import com.mysql.cj.log.Log;

public class CustomOnJPAWriteContent implements OnJPAWriteContent {

    @Override
    public Blob getJPABlob(byte[] binaryData) throws ODataJPARuntimeException {
        return new com.mysql.cj.jdbc.Blob(binaryData, exceptionInterceptor);
    }

    @Override
    public Clob getJPAClob(char[] characterData) throws ODataJPARuntimeException {
        
        return new com.mysql.cj.jdbc.Clob(new String(characterData), exceptionInterceptor);

    }

    ExceptionInterceptor exceptionInterceptor = new ExceptionInterceptor() {

        @Override
        public Exception interceptException(Exception sqlEx) {
            // TODO Auto-generated method stub
            return null;
        }

        @Override
        public ExceptionInterceptor init(Properties props, Log log) {
            // TODO Auto-generated method stub
            return null;
        }

        @Override
        public void destroy() {
            // TODO Auto-generated method stub

        }
    };

}



  1. kde je moje databáze uložena, když ji vytvořím v MySQL?

  2. PHP:PDO Query nevrací žádné výsledky, ale stejný dotaz vrací 4 výsledky v phpmyadmin?

  3. Výuka SQL (DDL, DML) na příkladu dialektu MS SQL Server

  4. přidání 30 minut k datetime php/mysql