Oracle
 sql >> Baza danych >  >> RDS >> Oracle

Przechowuj obiekt Blob z Javy do BD:Rozmiar danych większy niż maksymalny rozmiar dla tego typu, gdy wyraźnie nie jest

Nie odpowiedź

Nie można przechowywać bajtów obrazu w ciągu (poprawnie). Możesz najpierw zakodować byte[] używając Base64 do String. Może chociaż źle zrozumiałem i zrobiłeś to poprawnie. Sprawdź, czy zarejestrowałeś każdy wyjątek.

Oprócz przestarzałej wersji sun (która nie jest dostępna w każdym JDK), istnieje kilka innych konwersji Base64. W JavaEE:

import javax.xml.bind.DatatypeConverter;
String data = "...";
byte[] bytes = DatatypeConverter.parseBase64Binary(data);
String data = DatatypeConverter.parseBase64Binary(bytes);

Czy nie można przechowywać danych jako binarnego obiektu BLOB bez kodowania base64? To przynajmniej zaoszczędziłoby miejsce.

Innym błędem może być rosnący ponownie używany ByteArray lub inny trywialny błąd.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. (Angielski) Jak używać Oracle Database 19c Pre-Built Developer VM?

  2. Instrukcja aktualizacji w procedurze składowanej Oracle nie działa

  3. znak arabski nie został prawidłowo wstawiony (np. ????) w bazie danych Oracle?

  4. Błąd:ORA-00955:nazwa jest już używana przez istniejący obiekt w funkcji Oracle

  5. do czego służy oci_bind_by_name?