2011-03-22 7 views
3

두 개의 Excel 시트 사이에 외래 키를 설정하고 두 시트의 쿼리 레코드를 설정할 수 있습니까?두 엑셀 시트 사이에 외래 키를 설정할 수 있습니까?

나는 학생 세부 사항의 엑셀 시트를 받았고 다른 시트는 전체 마크로 구성되어 있습니다. 두 시트 모두에 공통된 필드가 RegID입니다. 그리드에있는 두 시트의 이름과 표식을 표시해야합니다 ... 어떻게 할 수 있습니까? 제발 도와주세요 ....

Query = "[뷰어 $]를 LEFT JOIN [UI $]에서 b로 선택하십시오. [Responsible Person] = b. [Responsible Person] b. [Responsible Person] ] = null ";

이 쿼리는 데이터 집합에 레코드를 반환하지 않습니다 ...

+0

첫 번째 질문에 대한 대답은 "아니오"입니다. 두 번째 경우에는 "두 레코드의 쿼리 레코드"에 대한 정보를 추가 할 수 있습니다. –

+0

나는 학생 세부 사항의 엑셀 시트를 받았고 또 다른 시트는 전체 마크로 구성되어있다. 두 시트 모두에 공통된 필드가 RegID입니다. 그리드에있는 두 시트의 이름과 표식을 표시해야합니다 ... 어떻게 할 수 있습니까? – NewBie

답변

1

두 개의 시트에서 데이터를 읽고, FK을 가지고 당신이 데이터베이스에 입력 "결합"기록을 만들기 위해 그것을 혼합 의미하는 경우 설정이 가능해야합니다.

당신은 당신이 루프에 액세스하는 사람들 시트를 열 수 있지만 당신은 당신의 시트에서 데이터 건물을 조정해야합니다 Reading Excel Cells using C#

을 읽어보십시오.

0

SQL을 사용할 수 없습니다. 데이터 원본이 Excel 통합 문서 인 경우 UNIQUE이나 FOREIGN KEY도 지원되지 않습니다. 나는이 시나리오에 큰 영향을 엑셀 2007의 OpenXML SDK (DocumentFormat.OpenXml)를 사용했습니다

1

초보자. 기본적으로 Excel 문서를 Excel 문서로 가져와 다른 LINQ 개체와 마찬가지로 C# 내에서 쿼리 할 수 ​​있습니다. 마이크로 소프트는 실제로이 주제에 대해 꽤 좋은 '멍청이 가이드'(빠른 검색 후)를 가지고 있습니다. 당신은 여기에서 찾을 수 있습니다

[편집] - 추가 몇 링크

http://msdn.microsoft.com/en-us/library/dd920313%28v=office.12%29.aspx

http://blogs.msdn.com/b/johnrdurant/archive/2010/02/19/excel-open-xml-linq-part-i.aspx

http://www.briankeating.net/blog/post/2010/04/26/Linq-to-Xlsx.aspx

당신은 LINQ를 사용하는 경우, 그것의 노 생각할와 나는이 유형의 일과 함께 갈 유일한 길입니다. 그것은 또한 fk의 아이디어를 당신에게 제공 할 것입니다. 왜냐하면 당신이 정의하고자하는 임의의 임의의 필드 (즉, LINQ 쿼리와 마찬가지로)에 '참여'할 수 있기 때문에 요구 사항을 완벽하게 처리해야합니다.

관련 문제