SET BLOB SIZE
SET BLOB SIZE ( BLOB ; tamanho {; preenchimento} )
Parâmetro | Tipo | Descrição | |
---|---|---|---|
Blob | Blob | → | Campo ou variável BLOB |
tamanho | Integer | → | Novo tamanho do BLOB |
preenchimento | Integer | → | Código ASCII do caractere de preenchimento |
Descrição
SET BLOB SIZE redimensiona o BLOB blob de acordo com o valor passado no tamanho.
Se você deseja alocar novos bytes para um BLOB e deseja que os bytes sejam inicializados com um valor específico, passe o valor (0 .. 255) para o parâmetro de preenchimento.
Nota
Nota de compatibilidade: como este comando altera o blob passado como parâmetro, não é compatível com objetos blob (tipo 4D.Blob). Ver Passing blobs and blob objects to 4D commands em developer.4d.com
Tratamento de erro
Se você não pode redimensionar um BLOB devido a memória insuficiente, o erro -108 é gerado. Você pode interceptar esse erro usando um método de interrupção ON ERR CALL.
Exemplo 1
Quando você está no meio de um processo longo ou interprocesso BLOB, é uma boa idéia liberar a memória que ocupa. Para isso, escreva:
SET BLOB SIZE(aProcessBLOB;0)
SET BLOB SIZE(◊anInterprocessBLOB;0)
Exemplo 2
O exemplo a seguir cria um BLOB de 16K cheios de 0xFF:
var vxData : Blob
SET BLOB SIZE(vxData;16*1024;0xFF)