2013-04-24 5 views
0

나는 작업중인 프로젝트에 대해의 테스트 데이터 을 만들려고합니다. 지금은 내 테이블에 약 64000 레코드가 있지만 더 필요합니다. 제 질문은이 모든 행을 복사하고 다시 삽입 할 수 있습니까?SQL Server 동일한 테이블에 테이블을 삽입 하시겠습니까?

나는 시도했다 :

Select * INTO dbo.Calls from dbo.Calls 
+2

제목 SQL 서버를 말한다. 코드 샘플은 SQL Server 인 것 같습니다. 태그는 mysql을 말한다. 이걸 정리해 줄래? –

답변

2

를 사용에 기본 키에는 고유 값이며 NULL 값을 포함 할 수 없습니다. 테이블에 기본 키가 없으면 다음 쿼리를 사용하십시오. 모든 열에 대한

사용 : 선택한 열에 대한

INSERT INTO dbo.Calls SELECT * fROM dbo.Calls 

사용 :

INSERT INTO dbo.Calls (<column name list>) SELECT <column name list> FROM dbo.Calls 
0

사용하면 넣다이 쿼리 할 하지primary key 당신이 primary key이있는 경우는

insert into table_name 
select * from table_name 

다음이

insert into table_name (col2,col3) 
select col2,col3 from table_name 
+1

기본 키가있는 경우 정의에 따라 행을 복제 할 수 없습니다. 당신이 목표로 삼은 것은 "신원의 기둥"이었습니다 (다시, 행을 정확하게 복제하는 것을 배제 함). 식별 열과 기본 키는 두 가지 별도 개념으로, 동의어로 사용하면 안됩니다. –

+0

@Damien_The_Unbeliever : 네 말이 맞아! –

관련 문제