Oracle
 sql >> база данни >  >> RDS >> Oracle

Извлечете Oracle LONG до низ във VBA

Това работи за мен:

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

Където „RS“ е ADO набор от записи, съдържащ резултати от заявка, а „BinaryToString“ е както е показано по-долу.

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. Оценка на PL/SQL булеви променливи в Oracle Forms

  2. Как да изпълним ПЪЛНО ВЪНШНО СЪЕДИНЯВАНЕ в ORACLE с помощта на оператор "+"?

  3. Твърде дълга грешка в низовия литерал на Oracle Sql Developer

  4. Oracle TO_DATE не работи

  5. Не може да се създаде въведена заявка за заявка с повече от едно връщане, като се използва тип резултат на заявка