반응형
/********************************************************************************************
-- Title : [2k5] x64에서 엑셀 생성 오류(엑셀 공급자) 해결 및 엑셀 자동 첨부 메일링
-- Reference : wipscorp.com 정명훈K/정진아, microsoft.com
-- Key word : 엑셀, excel, provider, 공급자, mailing, 메일링
********************************************************************************************/

/*
-- 정진아 작업 내역
*/

엑셀첨부파일_메일링_정진아.docx

(win2003x64에서 JET안됨)Need 64-bit JET provider for x6.mht



/*
-- 연결된 서버
*/

EXECsp_addlinkedserver @SERVER = @SERVERNAME

                      , @srvproduct ='Microsoft Excel Workbook'

                      , @provider ='Microsoft.ACE.OLEDB.12.0'

                      , @datasrc = @PATH

                      , @provstr ='Excel 12.0';


EXEC
sp_addlinkedsrvlogin @SERVERNAME,'false';


/*
-- 오류
*/

메시지7403, 수준16, 상태1, 1

OLE DB 공급자"Microsoft.ACE.OLEDB.12.0"() 등록하지 않았습니다.


/*
-- 해결
*/

1. MS 다운로드센터에서아래에링크되어있는드라이브를설치한다 (32bit인지 64bit인지확인)

Microsoft Access Database Engine 2010 Redistributable

http://www.microsoft.com/downloads/details.aspx?FamilyID=C06B8369-60DD-4B64-A44B-84B371EDE16D&displayLang=ko

  

2. 아래의스크립트실행한다

sp_configure'show advanced options', 1

GO

 

RECONFIGURE WITH OverRide

GO

 

sp_configure'Ad Hoc Distributed Queries', 1

GO

 

RECONFIGURE WITH OverRide

GO

 

EXEC master.dbo.sp_MSset_oledb_prop N'Microsoft.ACE.OLEDB.12.0', N'AllowInProcess', 1

GO

 

EXEC master.dbo.sp_MSset_oledb_prop N'Microsoft.ACE.OLEDB.12.0', N'DynamicParameters', 1

 

 

-- 확인방법 : 경로에해당파일생성테스트 (엑셀파일 MS-Server에서조회)

SELECT*

FROMOPENDATASOURCE('Microsoft.ACE.OLEDB.12.0',

   'Data Source=E:\test.xlsx;Extended Properties=''Excel 12.0;HDR=YES''')...[Sheet1$]

GO

/*
-- Provider 생성 확인
*/

 

 -- "Microsoft.ACE.OLEDB.12.0"에서 동적 매개 변수와 Inprocess 허용 체크 확인


 

 

 

 

 

반응형

+ Recent posts