때로는 향후 검색 및 사용을 위해 단어 기사를 데이터베이스에 저장해야 하는데 어떻게 해야 할까요? 다음은 워드 문서를 데이터베이스에 저장하는 두 가지 방법입니다.
첫 번째 방법: 전체 단어 문서를 데이터베이스에 저장합니다. 이 방법은 단어 문서의 내용을 저장할 뿐만 아니라 단어 형식도 저장합니다.
저장 시 사용되는 데이터베이스가 SQL Server인 경우 워드 문서가 저장되는 필드는 Binary 데이터 형식을 사용해야 합니다. ACCESS 데이터베이스를 사용하는 경우 OLE 개체를 사용해야 합니다.
전체 소스 코드는 다음과 같습니다.
'데이터베이스에서 로컬로 파일을 다운로드합니다.
공용 함수 LoadFile(ByVal col As ADODB.Field, ByVal FileName As String) As Boolean '이진 데이터 가져오기
오류 발생 시 GoTo myerr:
Dim arrBytes()를 바이트로
FreeFileNumber를 정수로 희미하게 표시
lngsize = col.ActualSize
arrBytes = col.GetChunk(lngsize)
FreeFileNumber = FreeFile
바이너리 액세스를 위해 FileName 열기 #FreeFileNumber로 쓰기
#FreeFileNumber, , arrBytes를 입력하세요.
#FreeFileNumber 닫기
로드파일 = 참
마이어:
Err.Number <> 0이면
로드파일 = 거짓
Err.Clear
종료 조건
기능 종료
'로컬에서 데이터베이스로 파일 업로드
공용 함수 UpLoadFile(ByVal FileName, ByVal col As ADODB.Field) As Boolean
오류 발생 시 GoTo myerr:
Dim arrBytes()를 바이트로
FreeFileNumber를 정수로 희미하게 표시
FreeFileNumber = FreeFile
#FreeFileNumber로 바이너리의 파일 이름 열기
n = LOF(FreeFileNumber)
ReDim arrBytes(1에서 n)을 바이트로
#FreeFileNumber, , arrBytes 가져오기
#FreeFileNumber 닫기
col.AppendChunk(arrBytes)
UpLoadFile = 참
마이어:
Err.Number <> 0이면
UpLoadFile = 거짓
Err.Clear
종료 조건
기능 종료
두 번째 방법:
데이터베이스를 설계할 때 설계 필드에는 wjmc(파일 이름), wjsx(파일 확장자), Wjnr(파일 콘텐츠가 이진 데이터 유형임)이 포함됩니다. (데이터베이스가 액세스 데이터베이스를 사용하는 경우 파일 내용은 ole 개체이고 SQL Server 데이터베이스는 이미지입니다.)
이 프로그램은 모든 파일 형식에서 작동할 수 있습니다.
Dim Wenjian As String
희미한 RD를 바이트로
길이만큼 희미한 크기
ConstMYSIZE = 1048576
희미한 WENJIANN()을 바이트로
새로운 ADODB.Recordset으로 Rs를 희미하게 만듭니다.
Rs.Open wj, Cn, 1, 3에서 * 선택
Rs.새로 추가
Rs!wjmc = Mid(이름, 1, InStr(이름, .) - 1)
Rs!wjsx = Mid(이름, InStr(이름, .) + 1)
'name은 파일 이름에 확장자를 더한 이름입니다.
바이너리 액세스를 위해 파일 이름 열기 #1로 읽기
크기 = LOF(1)
SIZE - MYSIZE >= 0인 동안 수행
WENJIANN(MYSIZE)을 바이트로 ReDim
1위 획득, , WENJIANN
Rs!wjnr.AppendChunk WENJIANN
크기 = 크기 - MYSIZE
고리
SIZE > 0이면
WENJIANN(SIZE)을 바이트로 ReDim
1위 획득, , WENJIANN
Rs!wjnr.AppendChunk WENJIANN
종료 조건
#1 닫기
Rs.업데이트
Rs=아무것도 설정하지 않음
이 글이 필요하시면 북마크해두세요.