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

Wyodrębnij Oracle LONG do ciągu w VBA

To działa dla mnie:

Debug.Print BinaryToString(RS.Fields("long_raw").Value)

Gdzie „RS” to zestaw rekordów ADO zawierający wyniki zapytania, a „BinaryToString” jest pokazane poniżej.

Function BinaryToString(Binary)
  'Antonin Foller, http://www.motobit.com
  'Optimized version of a simple BinaryToString algorithm.

  Dim cl1, cl2, cl3, pl1, pl2, pl3
  Dim L
  cl1 = 1
  cl2 = 1
  cl3 = 1
  L = LenB(Binary)

  Do While cl1 <= L
    pl3 = pl3 & Chr(AscB(MidB(Binary, cl1, 1)))
    cl1 = cl1 + 1
    cl3 = cl3 + 1
    If cl3 > 300 Then
      pl2 = pl2 & pl3
      pl3 = ""
      cl3 = 1
      cl2 = cl2 + 1
      If cl2 > 200 Then
        pl1 = pl1 & pl2
        pl2 = ""
        cl2 = 1
      End If
    End If
  Loop
  BinaryToString = pl1 & pl2 & pl3
End Function


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. DML i obsługa wyjątków — Oracle

  2. Problem z uruchomieniem skryptu oracle z wiersza poleceń za pomocą sqlplus

  3. Zapytanie SQL z CASE i grupowanie według

  4. Wybierz max(data) nie działa, jeśli wiersze mają różne wartości, chcę tylko pobrać wiersz z najwyższą datą

  5. Java Date.toString w Oracle TO_DATE