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

Jak przechowywać tablicę bajtów w Oracle?

W Oracle typ danych RAW jest odpowiedni do przechowywania wartości binarnych.

Problem z używaniem typów danych znaków do przechowywania danych binarnych polega na tym, że wartości podlegają tłumaczeniu zestawu znaków .

Jeśli zestaw znaków klienta nie jest zgodny z zestawem znaków bazy danych, wartości podlegają translacji. (Oznacza to, że wartość binarna w jednym kodowaniu reprezentuje określony znak, ale ten znak może być reprezentowany przez inną wartość binarną w innym zestawie znaków.

W przypadku typu danych znakowych Oracle zachowuje wartość „znakową”, a nie zakodowaną wartość binarną.

Jeśli chcesz użyć typu danych znaku (np. CHAR lub VARCHAR2) do przechowywania wartości binarnych, naprawdę musisz zakodować wartość binarną jako zwykły tekst oraz przechowywać i pobierać zakodowaną wartość. Dwa popularne kodowania binarne na tekst to szesnastkowe i base64 (uuencode).

Oracle zapewnia wbudowane funkcje RAWTOHEX i HEXTORAW do kodowania i dekodowania danych binarnych (typ danych RAW) jako ciągów szesnastkowych (typ danych VARCHAR2).



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak zainstalować perl DBD::Oracle na OSX Snow Leopard 10.6?

  2. Używanie DISTINCT dla określonych kolumn

  3. Autoinkrementacja w Oracle do już utworzonej tabeli

  4. ORA - 00933 zamieszanie ze sprzężeniem wewnętrznym i as

  5. Pobierz liczbę zaktualizowanych wierszy