2016-07-05 2 views
0

현재 데이터가 채워진 데이터 테이블이 있지만 기존 데이터베이스 (빈 데이터베이스)에 삽입하는 데 문제가 있습니다.SQL 서버에 데이터 테이블 삽입

sqlbulkcopy도 살펴 보았지만 많은 행운이 없었습니다.

는 엔티티 프레임 워크를 사용하지만 내가 기대 :

_db.TableName.AddRange(dt); 

제대로 내 데이터 테이블에서 새로운 데이터를 삽입합니다.

여기서 제가 잘못 되었나요?

+0

무엇이 오류입니까? – techspider

+0

당신은 보통 DataTable과 Entity Framework를 동시에 사용하지 않을 것입니다. –

+0

@techspider는 System.Data.Datatable을 System.Collections.Generic.IEnumerable confusedandamused

답변

0

몇 단계가 누락되었습니다. 먼저 데이터베이스에 테이블을 생성해야하는데, 이는 일반적으로 많은 복잡한 이유 때문에 런타임에 수행되지 않습니다. 연구 엔티티 프레임 워크 코드 먼저이 작업을 수행하는 방법에 대한 자세한 내용을 참조하십시오.

두 번째로 Entity Framework를 사용하려면 데이터 테이블을 올바른 유형의 개체 집합으로 변환해야합니다.

솔직히 Entity Framework를 피하고 CREATE TABLE 스크립트를 포함시킨 다음 (실행하기 전에 정의하는 것이 더 좋음) SqlBulkCopy를 사용하면 SqlBulkCopy가 미리 정의 된 테이블을 필요로합니다.

+0

MSSQL Server에서 데이터베이스/테이블 구조를 이미 생성했다면 CREATE TABLE 스크립트의 요점은 무엇입니까? – confusedandamused

+0

@confusedandamused : 빈 데이터베이스를 말했고 작성중인 테이블에 대해서는 언급하지 않았습니다. – Guvante

+0

내가 잘못 입력 했음 - 비어 있음으로써 데이터베이스가 존재하고 테이블 구조 (열)가 정의되어 데이터 테이블과 일치 함을 의미합니다. – confusedandamused