복붙노트

[SQL] OPENROWSET와 Excel로 SQL 서버 수출

SQL

OPENROWSET와 Excel로 SQL 서버 수출

나는 성공적으로 다음과 같은 문으로 엑셀에 수출하고 있습니다 :

insert into OPENROWSET('Microsoft.Jet.OLEDB.4.0', 
'Excel 8.0;Database=C:\template.xls;', 
'SELECT * FROM [SheetName$]') 
select * from myTable

템플릿에 기록하거나 좀 해결 방법을 마련해야합니까 없구요 있도록 엑셀 시트의 새 이름을 지정하는이 템플릿을 사용하는 표준 방법이 있나요?

사람들의 경험에서이 작업을 수행하는 가장 좋은 방법은 무엇입니까?

해결법

  1. ==============================

    1.당신은 동적 SQL을 사용해야 할 것입니다. 등 OPENROWSET는 매개 변수로 리터럴을 할 수 있습니다.

    당신은 동적 SQL을 사용해야 할 것입니다. 등 OPENROWSET는 매개 변수로 리터럴을 할 수 있습니다.

    DECLARE @myfile varchar(800)
    
    SET @myfile = 'C:\template.xls'
    
    EXEC ('
    insert into OPENROWSET(''Microsoft.Jet.OLEDB.4.0'', 
    ''Excel 8.0;Database=' + @myfile + ';'', 
    ''SELECT * FROM [SheetName$]'') 
    select * from myTable
    ')
    
  2. ==============================

    2.먼저 템플릿의 복사본을 만들고, 다음 OPENROWSET에 복사본의 파일 이름을 통과 할 수 없습니다?

    먼저 템플릿의 복사본을 만들고, 다음 OPENROWSET에 복사본의 파일 이름을 통과 할 수 없습니다?

  3. from https://stackoverflow.com/questions/909933/sql-server-export-to-excel-with-openrowset by cc-by-sa and MIT license