|
Pessoal, um colega est� com essa d�vida no SQLWindows.
Estou tentando usar campos BLOB do Oracle 9i no SQLWindos 3.1. A Gupta recomenda a utiliza��o do par�metro USELOB = 1 dentro do arquivo SQL.INI ou setar o par�metro DBP_ORAUSELOB atrav�s da fun��o SqlSetParameter dentro da pr�pria aplica��o para que seja poss�vel manipular os BLOBs. Tamb�m, encontrei, na documenta��o, a orienta��o para utilizar a fun��o SqlSetLongBindDatatype da seguinte forma: 1.Primeiro eu incluo uma linha "em branco" e coloco uma imagem na vi�vel: Call SalPicGetString( pic1, PIC_FormatObject , sPict ) Call SqlPrepareAndExecute( hSqlLocal, ' INSERT INTO teste ( num_a, dsc_b ) VALUES(NULL,empty_blob()) ' ) 2. "Preparar" o comando: Call SqlPrepare( hSqlLocal, ' UPDATE teste SET num_a = 1, dsc_b = :sPict ' ) 3. Converter a vari�vel sPict que � long string para "bin�ria": Call SqlSetLongBindDatatype(2, 23) 4. Executar o comando: Call SqlExecute( hSqlLocal )
Consigo executar o trecho de c�digo acima sem nenhum erro, por�m quando tento consultar a linha com o comando abaixo (ainda na fase de "prepara��o" do comando) recebo a seguinte mensagem:
Comando: Call SqlPrepare( hSqlLocal, ' SELECT dsc_b FROM teste INTO :sPict ' ) Mensagem: ORA-02005: implicit (-1) length not valid for this bind or define datatype
Parece que a coluna BLOB est� "Nula"...
Algu�m j� trabalhou com BLOBs no Centura ? |
