2010-07-13 3 views

답변

38

SQL Management Studio에서 테이블을 마우스 오른쪽 단추로 클릭하십시오.

스크립트 선택 ... 생성 ... 새 쿼리 창.

이렇게하면 새 쿼리 창에서 테이블을 다시 만들 수있는 스크립트가 생성됩니다.

스크립트의 테이블 이름을 새 테이블의 이름으로 변경하십시오.

스크립트를 실행하십시오.

+2

어쨌든 2012 년! 감사 Avalanchis! – Bojangles

22
SELECT * 
INTO target 
FROM source 
WHERE 1 = 2 
+6

이것은 일부 구조 만 캡처합니다. 동일한 열 이름, 데이터 유형 및 null 입력 가능 설정. 그러나 그 외 모든 것은 뒤에 남을 것입니다. 뒤에 남겨진 물건의 맨 위에는 PK, UK, FK 및 Check 제약 조건, ID 특성 및 계산 열이 포함됩니다. 이것은 OP 구조의 어느 부분이 OP의 필요성을 충족시킬지를 원하는지에 달려 있습니다. –

+0

where 절은 선택 사항입니다. – Dhinakar

+0

왜'1 = 2'입니까? 이게 항상 거짓이 아니겠습니까? –

-2

SQL Server Management Studio는 어떻게하면 더 잘 만들 수 있는지 계속 묻습니다. 테이블을 강조 표시하고 Ctrl, Ctrl 키를 누른 상태에서 V! 동시에이 질문에 대한 답변과 위대 할 것입니다! 하나 개의 테이블에서 데이터 삽입을 위해 OLD_TABLE

의 기존 테이블

SELECT * INTO NEW_TABLE을 새로운 테이블을 생성하기위한

+0

새로운 기능을 발명하고 문제를 해결할 것이라고 말하면서 대답합니까? – Yunnosch

1

다른 테이블

상위 선택 Table_Name2에 인서트 (1) * Table_Name1에서

+0

StackOverflow에 오신 것을 환영합니다. 도와 주셔서 감사합니다. 제발 대답의 요점을 설명하십시오, 코드는 그렇게 도움이되지 않습니다. 특히, 당신과 거의 같은 다른 대답이 있습니다. 그것은 단지 내용을 복사하는 것을 피합니다. 값을 복사하지 않으면 OP가 원하는 동작의 일부로 보입니다. 이유를 설명해 주시겠습니까? – Yunnosch

2

여기에서는 2 가지 구현을 보여 드리겠습니다.

처음 그냥 단지 명령을 실행 한 후 중복 테이블을 작성해야하는 경우

: : 물론

SELECT top 0 * INTO [dbo].[DuplicateTable] 
FROM [dbo].[MainTable] 

을 완전히 작동하지 않습니다. 제약 조건이 복사되지 않으며 기본 키 또는 기본값도 복사되지 않습니다. 이 명령은 동일한 열 구조로 새 테이블을 작성하며 새 테이블에 데이터를 삽입하려는 경우에만 사용됩니다. 단계 아래이

을하지만 당신은 모든 제약 조건 테이블을 복제 할 경우 & 키는 다음과 같습니다 :

초 (권장)

  1. 열기 SQL Management Studio의 데이터베이스.
  2. 복제 할 테이블을 마우스 오른쪽 단추로 클릭하십시오.
  3. -> 만들기 -> 새 쿼리 편집기 창에서 스크립트 테이블을 선택하십시오. 이렇게하면 새 쿼리 창에서 테이블을 다시 생성하는 스크립트가 생성됩니다.
  4. 스크립트의 테이블 이름과 상대 키 & 제약 조건을 변경하십시오.
  5. 스크립트를 실행하십시오.
0
SELECT * INTO newtable FROM oldtable where 1=2 


    where 1=2, this statement is use when only Copy complete structure of a 
    table in sql without Copying data of table 

SELECT * INTO newtable FROM oldtable 
create table with data you can use this statement 
관련 문제