문제

수천 행을 저장하고 무언가를 한 후 업데이트하는 가장 좋은 방법은 무엇입니까?

현재 나는 삽입 할 때 DataTable을 사용하여 채우고 있습니다.

MyDataAdapter.Update(MyDataTable)

MyDatatable에 약간의 변경을 한 후에는 MyDataAdapter.Update (MyDatatable) 메소드를 다시 사용합니다.

편집하다:

더 많은 정보를 제공하지 않아 죄송합니다.

XML 파일에서 최대 200.000 행이 생성 될 수 있습니다. 데이터베이스에 행이 저장됩니다. 이후 각 행에 대한 프로세스가 있습니다. 데이터베이스에서 각 행을 업데이트해야합니다.

행별로 행을 업데이트하는 대신 데이터 가능한 데이터를 업데이트하고 동일한 DataAdapter를 사용하여 행을 업데이트하기로 결정했습니다.

이것은 내 최고입니다.

더 똑똑한 접근 방식이있을 수 있다고 생각합니다.

도움이 되었습니까?

해결책

귀하의 의견에 반응 할 때 :

an DataAdapter.Update() 행별로 행을 UDATE (및 삽입/삭제)합니다. 개별 변경 사항이 있다면 실제로 더 빠른 방법은 없습니다. 체계적인 변화가있는 경우 SET Price = Price+ 2 WHERE SelByDate < '1/1/2010' 당신은 a DBCOMMAND 데이터베이스에 대해.

그러나 성능 전에 거래 및 오류 처리에 대해 걱정해야 할 수도 있습니다.

다른 팁

내가 올바르게 이해하면 두 개의 개별 작업을 수행하고 있습니다 : 행을 데이터베이스에로드 한 다음 해당 행을 업데이트합니다.

삽입중인 행이 다른 ADO.NET 지원 데이터 소스에서 나온 경우 SQLBULKCOPY를 사용하여 행을 배치에 삽입 할 수 있습니다.

행이 데이터베이스에 있으면 SQLCommand를 실행하여 값을 수정하는 것이 좋습니다.

당신이 무엇을 그리고 왜-당신이 질문을하고 있는지에 대한 자세한 내용을 제공 할 수 있다면 아마도 우리는 그것에 대한 답을 더 잘 맞출 수있을 것입니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top