티스토리 뷰

자료/ASP

엑셀 파일 업로드

네오블루 2010. 3. 22. 02:11

일단 OpenDataSource 이놈을 아셔야 합니다. 자세한거는 북스온라인 (EM 이나 쿼리 애널라이저에서 F1키를 

누르면 나오는 헬프파일)에서 보시면 아주 자세히 설명이 되어 있습니다.

그리고, MDAC 2.8을 깔아주셔야 합니다. 물론 DB서버에 재부팅 하게 되구여 (정확하지는 않습니다. 제가

패치까지 서팩3까지 설치 했지만 위에것은 깔리지가 않는거 같더군여 ?)

암튼 레지키쪽을 확인이 되셔야 합니다.

HKEY_LOCAL_MACHINE\Software\Microsoft\Jet\4.0\

이쪽 아래로 보시면 레지키에 8.0 이 등록이 되며 (뒤벼 보셔야 할듯 ) 그놈은 97~2000 을 지원한다고 나와

있습니다.

그전에는 5.0 까지 뿐이 없으실겁니다.

(만약 설치할 ISAM이 없다고 에러나시면 거의 99%로 저문제 일겁니다.)


SELECT * FROM OpenDataSource('Microsoft.Jet.OLEDB.4.0','Data Source="파일위치";User
ID=;Password=;Extended properties=Excel 8.0')...시트명$"

자 위에 쿼리문을 던지시면 모든값을 불러 들이는 것을 알수가 있을겁니다.
이용하면

sql = "SELECT * FROM OpenDataSource('Microsoft.Jet.OLEDB.4.0','Data Source=""파일위치"";User "
sql = sql " ID=;Password=;Extended properties=Excel 8.0')...시트명$"
set rs = 연결문.execute(sql)

if rs.bof or eof then loop_count = 0 else loop_count = 1 arrRs = rs.getrows()
end if

set rs = nothing

if loop_count = 1 then
for i = 0 to ubound(arrRs,2) for j = 0 to ubound(arrRs,1) response.write(j,i)&":" next response.write "<br>" next end if
출처 : http://www.taeyo.pe.kr/Forum/Content.aspx?SEQ=1063&TBL=KNOWHOW
주의사항
input type="file" 를 처리페이지로 넘겨 받으면 
c:/file/filename.xls 로 오는게 아니고 filename.xls만 가지고옴
IE6, IE7은 경로까지 다 오는걸 확인했으나 IE8은 보안정책상 파일명만 넘어옴
이 부분은 인터넷 보안 설정에서
"파일을 서버에 업로드할 때 로컬 디렉터리 경로 포함" 항목을 "사용" 으로 설정하면 됨