2011-07-01 7 views

답변

2

테이블은 동일한 구조를 가지고, 어떤 자동 생성 된 필드는 사용할 수없는 경우

insert into DestinationTable 
    select * from SourceTable 

또한 만들려면

select * 
    into DestinationTable 
    from SourceTable 

구문을 사용할 수에 대상 테이블을 채우기 파리.

+1

두 번째 코드 단편은 시스템 테이블이 실행되는 동안 시스템 테이블에서 이상한 잠금을 유지한다는 점에 유의하십시오. 데이터를 복사하지 않고 구조를 복사하려면 "select top 0 * into ..."을 사용하는 것이 가장 좋습니다. 그런 다음 첫 번째 명령문을 사용하여 실제로 데이터를 복사하십시오. – gjvdkamp

+0

동의합니다. 두 번째 형식은 크지 않은 테이블에 대한 임의 (ad-hoc) 쿼리에 매우 유용합니다. 저장된 코드의 경우 명시적인 열 목록과 함께 첫 번째 양식을 사용하는 것이 좋습니다. – SWeko

+0

자동 생성 된 키 (int) 및 참조가있는 테이블에 대한 솔루션이 있습니까? –

0

동일 코드를 동일하게 유지하려면 코드 스미스 템플릿을 사용하여 쉽게 할 수 있습니다. here에서 템플릿을 다운로드하고 ScriptTableData.cst 템플릿을 사용하십시오. 그 전에 시스템에 코드 스미스를 설치해야합니다.

관련 문제