C#에서는 강력한 DB 라이브러리를 제공하고 있음에도 제대로 이용하고 있지 못하다. (특히 Linq)

대부분 하드 쿼리를 이용해서 필요한 정보들을 요청하고 정리하는데, 프로그램 상에서 수정할 수 있는 것을 도전해보고 있다.

 

쿼리를 통해 받은 DataTable 객체를 이용하고자 하려니 여러 문제가 생긴다.

가장 간단하게 DataTable에서 Select하고 내용을 쓰려고 하니, Select을 DataRow[]를 반환하는 것이다.

이걸 foreach 혹은 for 문을 돌려 새로운 DataTable 객체에 넣으려니 분통이 터진다.

알고보니 그렇게 할 필요가 없다.

DataTable Table = SomeTable.Select("SomeThing = '100'").CopyToDataTable();

위와 같이 하면, 데이터 테이블을 반환한다.

다만 이렇게 할 경우, Select 이후 DataRow가 0일 경우 에러가 발생한다.

DataRows[] dataRows = SomeTable.Select("SomeThing = '100'")
if(dataRows == null || dataRows.Length == 0)
	return;
DataTable Table = dataRows.CopyToDataTable();

그렇기 때문에 위와 같이 에러 처리를 해주는 것이 좋다.

'C#' 카테고리의 다른 글

[C#] 컨테이너 번호 에러 체크 container number digit check  (1) 2022.09.22

+ Recent posts