2013-07-10 3 views
4

가져 오기 전에 테이블에서 데이터를 지우는 방법을 알아내는 것이 왜 그렇게 어려운가요? 누군가 SSIS 2012 내에서 그렇게하기위한 표준, 모범 사례 절차를 올바른 방향으로 가르쳐 주시겠습니까? 나는 기본적인 SQL 문을 사용했다. 즉 Tablename, TRUNCATE tablename 등을 삭제하십시오.데이터를 가져 오기 전에 테이블을 지우려면 어떻게합니까?

+2

무엇을 의미합니까? 어떻게 테이블을 지우는 지 알아내는 것이 얼마나 어려운가요? SQL 실행 태스크를 사용하면 테이블 절단과 같은 기본 SQL 조작을 수행 할 수 있습니다. 스택 오버플로에 대한 질문을 게시하기 전에 빠른 Google 검색을 권합니다. – Zane

답변

6

이 작업을 수행하려면 Execute SQL Task을 사용합니다. SQLStatement 속성에서 문을 잘라내거나 삭제하십시오. 또한 Lamark에 명시된 바와 같이 결과 바인딩으로 인해 오류가 반환되는 데 문제가 있으므로 작업의 "결과 집합"속성이 none으로 설정되도록 할 수 있습니다.

+0

감사합니다,하지만 tablename을 삭제하면 "[Execute SQL Task] 오류가 발생합니다 : ResultSetType에 대해 반환 된 결과 바인딩 수가 올바르지 않습니다 :"ResultSetType_Rowset " – Paynetech

+0

"tablename에서 삭제 "를 입력 했습니까? "tablename을 삭제하십시오."진술에 "from"을 추가했는지 확인하십시오. 그러나이 시나리오에서는 꼭 잘라내기를 사용합니다. 특히 모든 데이터를 제거하는 경우에 유용합니다. – jymbo

+0

"Delete dbo.tablename"을 사용했습니다. "tablename에서 삭제", tablename에서 삭제 * ". 지금은"[SQL 작업 실행] 오류 : 전체 결과 집합과 XML 결과를 얻으려면 결과 바인딩 이름을 0으로 설정해야합니다. " 하지만 그 결과 바인딩 이름을 사용하고 있습니다. 4:35 PM 이것은 내가 시도하고있는 것입니다. http://irfansworld.wordpress.com/2011/07/31/how-to-truncate-and-load-a- table-from-ssis/ 매우 금이 간다.하지만 그게 전부다. – Paynetech

0

모범 사례와 관련하여 나는 보통 가능한 한 SQL 수준에서 많은 작업을 수행합니다. @jymbo 권고처럼 SQL 실행 태스크는 SSIS 자체 내에서 잘리는 방법이 있더라도 최상의 행동 방침이 될 수 있습니다.

0

@Paynetech - 죄송합니다. SSIS 프로젝트를 직접 만들려고 할 때이 단순한 작업으로 인해 나를 버렸습니다. 그리고 원래의 질문에 답변 할 수 없기 때문에 이것을 답으로 게시해야하므로 다음과 같은 몇 가지 추가 정보를 읽으십시오. http://social.msdn.microsoft.com/forums/sqlserver/en-US/d69f2598-3f95-41f1-bd86-da46e9b6d18b/want-to-delete-records-from-table-using-ssis

그런데 Google을 검색 할 때 "삭제하는 방법 "-이 질문은 # 2, # 1은 SSIS 패키지 자체를 삭제하는 방법입니다.

관련 문제