2013-03-27 8 views
4

OpenRowSet 빈 데이터에 데이터를 삽입하는 방법?OpenRowSet을 사용하여 빈 파일에 데이터를 삽입하는 방법?

나는 (D에게 말한다 : \ TDB)를 TXT 파일에 삽입 할 필요가 데이터베이스에서 어떤 선택 출력 (말 select * from sys.tables를) 내가 얻을

INSERT INTO OPENROWSET('Microsoft.Jet.OLEDB.4.0', 
'Text;Database=D:\TDB;HDR=Yes;', 'SELECT * FROM sys.tables.txt') 
select * from sys.tables; 

OLE DB 공급자 "MICROSOFT .JET.OLEDB.4.0 "linked server"(null) " returned message"Microsoft Jet 데이터베이스 엔진이 개체 'sys.tables.txt'를 찾을 수 없습니다. 개체가 존재하고 그 문자의 이름 철자를 확인하십시오. 및 경로 이름을 올바르게. "

메시지 7350, 수준 16, 상태 2, 줄

1 OLE DB 공급자에서 열 정보를 가져올 수 없습니다 "MICROSOFT.JET.OLEDB.4.0"연결된 서버 "(null이)"에 대한 .

무엇이 잘못 되었나요?

추신.

INSERT INTO OPENROWSET('Microsoft.Jet.OLEDB.4.0', 
'Text;Database=D:\TDB;HDR=Yes;', 'SELECT * FROM sys.tables.txt') 
select * from sys.tables; 

I 다음 BCP 해결책을 제시하지 마십시오 이미 테스트 원인과 매번 작동하지 않기 때문에 내가 지금 OPENROWSET ..

+1

, xp_cmdshell을 사용하여 템플릿 파일의 새 복사본을 만들고 복사본을 사용하여 채워진 파일을 다른 것으로 이름을 바꿨습니다 (타임 스탬프를 사용했습니다. p 매번 파일) xp_cmdshell을 사용하여 다음 실행을위한 공간을 만듭니다. –

+0

D : \ TDB에 쓸 수있는 권한이 SQL Server에 있습니까? 아마도 SQLCMD는 다음과 같은 옵션입니다. http://stackoverflow.com/questions/425379/how-to-export-data-as-csv-format-from-sql-server-using-sqlcmd – CeOnSql

답변

0

@serhio을 테스트 할 것입니다, 나는 아래 SQL을 테스트 몇 가지 테스트 결과가 있습니다.

  1. 파일 이름에 ". 그 안에.
  2. HDR (헤더 행)이 여기에 사용할 수 없습니다 (sys.tables.txt의 →의 systables.txt).
  3. txt 파일이 존재해야합니다 (제거). (그것을 만들기)
  4. 첫 번째 라인을 txt 파일은 소스 데이터의 모든 열 이름이어야합니다.

SQL

INSERT INTO OPENROWSET('Microsoft.Jet.OLEDB.4.0', 
'Text;Database=D:\TDB;', 'SELECT * FROM systables.txt') 
select * from sys.tables; 

systables.txt 후 내가 해당 열 헤더 템플릿 파일을 만든 과거에 그것을 한 적이

name,object_id,principal_id,schema_id,parent_object_id,type,type_desc,create_date,modify_date,is_ms_shipped,is_published,is_schema_published,lob_data_space_id,filestream_data_space_id,max_column_id_used,lock_on_bulk_load,uses_ansi_nulls,is_replicated,has_replication_filter,is_merge_published,is_sync_tran_subscribed,has_unchecked_assembly_data,text_in_row_limit,large_value_types_out_of_row,is_tracked_by_cdc,lock_escalation,lock_escalation_desc 
관련 문제