NOTÍCIA

ADODB.Stream

Olá
colegas do iMasters, tudo certo?

O artigo que estamos publicando, refere-se ao objeto
“ADODB.Stream” que pode ser utilizado em aplicações
ASP para a solução de problemas envolvendo informações
binárias. A finalidade do artigo é saber como funciona
este objeto que não é um dos mais conhecidos pelos
novos programadores da tecnologia.

A classe “Stream” do objeto “Adodb”
tem a finalidade de trabalhar com dados em formatos texto ou binário,
dependendo da necessidade.

No código abaixo daremos um exemplo de como
incluir num Banco de Dados↳Banco de dados134 conteúdosSQL ou NoSQL: eis a questão!!Data · mar 2020Banco de dados: como organizar e dar segurança para milhões de dados de loteriasData · mai 20215 serviços gratuitos na cloud para bancos de dados PostgresData · fev 2025Ver tudo em Data → informações binárias
oriundas de arquivos localizados em diretórios locais.

<%
Option Explicit

‘DECLARANDO VARIAVEIS

Dim ObjStr
Dim ds_addr_imagem
Dim varBuffer
Dim Ors
Dim oConn

‘CRIANDO O OBJETO
“STREAM”
Set ObjStr = Server.CreateObject(“ADODB.Stream”)

‘INDICANDO O ENDEREÇO
DA IMAGEM
ds_addr_imagem = Server.MapPath(“imagens/minha_imagem.jpg”)

‘INDICA O TIPO DE
DADO QUE O OBJETO DEVERÁ LER
ObjStr.Type = 1 ‘AdBinary – Binário

‘ABRE O OBJETO
ObjStr.Open

‘LE INFORMAÇÕES
DO ARQUIVO
ObjStr.LoadFromFile ds_addr_imagem

‘DECARREGA INFORMAÇÕES
NA VARIAVEL
varBuffer = ObjStr.Read

‘DESTROI O OBJETO
“STREAM”
objStr.Close
Set ObjStr = nothing

‘CRIA OBJETO “CONECTION”
Set oConn = Server.CreateObject(“ADODB.Connection”)

‘CRIA OBJETO “RECORDSET”
Set Ors = Server.CreateObject(“ADODB.Recordset”)

‘ABRE CONEXÃO
oConn.open “Dbq=” & Server.MapPath(“../bd/meubanco.mdb”)
& “;Driver={Microsoft Access Driver (*.mdb)}”

‘ABRE RECORSET COM
ACESSO DIRETO À TABELA
Ors.Open “tb_arquivo”,oConn,1,3,2

‘ADICIONA O REGISTRO
Ors.Addnew
Ors(“bn_file”) = varBuffer
Ors.Update

‘DESTROI OBJETOS
Ors.Close
Ser Ors = Nothinf
Oconn.Close
Set oConn = nothing

%>

É importante salientar que, para o Script
funcionar corretamente, é imprescindível que, no
caso do banco de dados for o Access, o campo que receberá
as informações deve ser do tipo “OLE”,
único neste banco, capaz de receber este tipo de informação.

No caso de utilização do SQLServer,
o tipo “Image” é o mais recomendável.

Outros bancos como o Oracle e o MySQL, vai depender
da versão do banco de dados, mas em regra o tipo correto
seria “LongVarBinary”.

Bom, ficamos por aqui espero que façam bom
proveito.

Até mais.

Matérias especiais e reportagens conduzidas internamente pela Redação iMasters. Acompanhe no Twitter @imasters e no Instagram/Threads @portalimasters

Mais de Redação iMasters
Ver perfil →