Às vezes, precisamos salvar um artigo do Word no banco de dados para pesquisa e uso futuro, mas como fazer isso? Abaixo estão dois métodos de armazenamento de documentos do Word no banco de dados.
O primeiro método: salvar todo o documento Word no banco de dados, que não apenas salva o conteúdo do documento Word, mas também salva o formato em Word.
Ao salvar, se o banco de dados utilizado for SQL Server, o campo em que o documento word é salvo deverá utilizar o tipo de dados Binário. Caso seja utilizado o banco de dados ACCESS, deverá ser utilizado o objeto OLE.
O código fonte completo é o seguinte:
'Baixa qualquer arquivo do banco de dados para o local:
Função pública LoadFile (ByVal col As ADODB.Field, ByVal FileName As String) As Boolean 'Obter dados binários
Em caso de erro GoTo myerr:
Dim arrBytes() como byte
Dim FreeFileNumber como inteiro
lngsize = col.ActualSize
arrBytes = col.GetChunk(lngsize)
FreeFileNumber = FreeFile
Abra FileName para acesso binário, escreva como #FreeFileNumber
Coloque #FreeFileNumber, , arrBytes
Fechar #FreeFileNumber
CarregarArquivo = Verdadeiro
myerr:
Se Err.Number <> 0 Então
CarregarArquivo = Falso
Err.Limpar
Terminar se
Função final
'Upload de arquivos do local para o banco de dados
Função pública UpLoadFile (ByVal FileName, ByVal col As ADODB.Field) como booleano
Em caso de erro GoTo myerr:
Dim arrBytes() como byte
Dim FreeFileNumber como inteiro
FreeFileNumber = FreeFile
Abra FileName para binário como #FreeFileNumber
n = LOF(FreeFileNumber)
ReDim arrBytes (1 para n) como byte
Obtenha #FreeFileNumber, , arrBytes
Fechar #FreeFileNumber
col.AppendChunk(arrBytes)
UpLoadFile = Verdadeiro
myerr:
Se Err.Number <> 0 Então
UpLoadFile = Falso
Err.Limpar
Terminar se
Função final
Segundo método:
Ao projetar o banco de dados, os campos de design incluem: wjmc (nome do arquivo), wjsx (extensão do arquivo), Wjnr (o conteúdo do arquivo é do tipo de dados binário). (Se o banco de dados usa banco de dados de acesso, o conteúdo do arquivo é um objeto OLE e o banco de dados do SQL Server é uma imagem)
O programa pode operar em todos os tipos de arquivos.
Dim Wenjian como corda
Dim RD como byte
Dim TAMANHO tão longo
ConstMYSIZE = 1048576
Dim WENJIANN() como byte
Dim Rs como novo ADODB.Recordset
Rs.Open selecione * de wj, Cn, 1, 3
Rs.AdicionarNovo
Rs!wjmc = Mid(Nome, 1, InStr(Nome, .) - 1)
Rs!wjsx = Mid(Nome, InStr(Nome, .) + 1)
'name é o nome do arquivo mais a extensão
Abra o nome do arquivo para acesso binário lido como nº 1
TAMANHO = LOF(1)
Faça enquanto TAMANHO - MEUTAMANHO >= 0
ReDim WENJIANN (MYSIZE) como byte
Obtenha o número 1, WENJIANN
Rs!wjnr.AppendChunk WENJIANN
TAMANHO = TAMANHO - MEU TAMANHO
Laço
Se TAMANHO > 0 Então
ReDim WENJIANN (TAMANHO) como byte
Obtenha o número 1, WENJIANN
Rs!wjnr.AppendChunk WENJIANN
Terminar se
Fechar #1
Rs.Atualização
Definir Rs=Nada
Se você precisar deste artigo, marque-o como favorito.