영업: 1-800-867-1380

CREATE TABLE(Azure SQL 데이터베이스)

업데이트 날짜: 2014년 4월

이 항목은 더 이상 사용되지 않습니다. SQL 14 Transact-SQL 참조(영문)에서 최신 버전을 찾을 수 있습니다.

Important중요
이 항목은 유지 관리되지 않습니다. 최신 버전은 CREATE TABLE(Transact-SQL)을 참조하십시오.

새 테이블을 만듭니다.

구문 표기 규칙(Azure SQL 데이터베이스)


CREATE TABLE 
    [ database_name . [ schema_name ] . | schema_name . ] table_name 
    ( { <column_definition> | <computed_column_definition> 
        | <column_set_definition> } 
        [ <table_constraint> ] [ ,...n ] ) 
FEDERATED ON (distribution_name = column_name)
[ ; ]

<column_definition> ::=column_name <data_type>
    [ COLLATE collation_name ] 

    [ NULL | NOT NULL ]
    [ 
        [ CONSTRAINT constraint_name ] DEFAULT constant_expression ] 
      | [ IDENTITY [ ( seed ,increment ) ] 
    ]
  [ <column_constraint> [ ...n ] ]
  [ SPARSE ]
  
<data type> ::= 
[ type_schema_name . ] type_name 
    [ (precision [ ,scale ] | max 
] 

<column_constraint> ::= 
[ CONSTRAINT constraint_name ] 
{     { PRIMARY KEY | UNIQUE } 
        [ CLUSTERED | NONCLUSTERED ] 
        [ 
          WITH ( < index_option > [ , ...n ] ) 
        ] 
| [ FOREIGN KEY ] 
        REFERENCES [ schema_name . ] referenced_ table_name [ ( ref_column ) ] 
        [ ON DELETE { NO ACTION | CASCADE | SET NULL | SET DEFAULT } ] 
        [ ON UPDATE { NO ACTION | CASCADE | SET NULL | SET DEFAULT } ] 
  | CHECK  (logical_expression ) 
} 

<computed_column_definition> ::=column_name AS computed_column_expression 
[ PERSISTED [ NOT NULL ] ]
[ 
    [ CONSTRAINT constraint_name ]
    { PRIMARY KEY | UNIQUE }
        [ CLUSTERED | NONCLUSTERED ]
        [ 
          WITH ( <index_option> [ , ...n ] )
        ]
    | [ FOREIGN KEY ] 
        REFERENCES referenced_table_name [ (ref_column ) ] 
        [ ON DELETE { NO ACTION | CASCADE } ] 
        [ ON UPDATE { NO ACTION } ] 
   [ NOT FOR REPLICATION ] 
    | CHECK (logical_expression ) 
] 

<column_set_definition> ::= 
column_set_name XML COLUMN_SET FOR ALL_SPARSE_COLUMNS

< table_constraint > ::=
[ CONSTRAINT constraint_name ] 
{ 
    { PRIMARY KEY | UNIQUE } 
        [ CLUSTERED | NONCLUSTERED ] 
        (column [ ASC | DESC ] [ ,...n ] ) 
        [ 
           WITH ( <index_option> [ , ...n ] ) 
        ]
  
    | FOREIGN KEY 
        ( column [ ,...n ] ) 
        REFERENCES referenced_table_name [ (ref_column [ ,...n ] ) ] 
        [ ON DELETE { NO ACTION | CASCADE | SET NULL | SET DEFAULT } ] 
        [ ON UPDATE { NO ACTION | CASCADE | SET NULL | SET DEFAULT } ] 

    | CHECK (logical_expression ) 
} 

<index_option> ::=
{ 
  IGNORE_DUP_KEY = { ON | OFF } 
  | STATISTICS_NORECOMPUTE = { ON | OFF } 
}

이 구문 다이어그램에서는 Microsoft Microsoft Azure SQL 데이터베이스에서 지원되는 인수와 옵션을 보여 줍니다.

Microsoft Azure SQL 데이터베이스은 CREATE TABLE 문을 사용할 때 다음 인수와 옵션을 지원하지 않습니다.

  • ON 키워드 { partition_schema_name | filegroup | "기본값" }

  • TEXTIMAGE_ON

  • FILESTREAM_ON

  • <column_definition>:

    • FILESTREAM

    • NOT FOR REPLICATION

    • ROWGUIDCOL

  • <data type>:

    • CONTENT

    • DOCUMENT

    • xml_schema_collection

  • <column_constraint>:

    • FILLFACTOR

    • ON

    • NOT FOR REPLICATION

  • <computed_column_definition>:

    • FILLFACTOR

    • NOT FOR REPLICATION

    • ON

  • <table_constraint>:

    • FILLFACTOR

    • ON

    • NOT FOR REPLICATION

  • <table_option>

  • <index_option>:

    • PAD_INDEX

    • FILLFACTOR

    • ALLOW_ROW_LOCKS

    • ALLOW_PAGE_LOCKS

    • DATA_COMPRESSION

    • ON PARTITIONS

note참고
database_name이 현재 데이터베이스이거나 database_name이 tempdb이고 object_name이 #으로 시작할 때 Microsoft Azure SQL 데이터베이스는 세 부분으로 된 이름 형식 database_name.[schema_name].object_name을 지원합니다.

Microsoft Azure SQL 데이터베이스 는 네 부분으로 된 이름을 지원하지 않습니다.

SPARSE 열은 Microsoft Azure SQL 데이터베이스에서 지원하는 모든 클라이언트 드라이버에서 쿼리할 수 있지만 현재 SQL Server 2008 Native Client ODBC 드라이버 이상에서만 결과 집합에서 Null 값의 압축을 완벽하게 지원합니다.

Important중요
현재 페더레이션 구현은 Web 및 Business와 함께 사용이 중지될 예정입니다. 확장성, 유동성 및 성능을 최대화하려면 사용자 지정 분할 솔루션을 배포하는 것이 좋습니다. 사용자 지정 분할에 대한 자세한 내용은 Azure SQL 데이터베이스 확장을 참조하십시오.

FEDERATED ON 절은 기존 페더레이션 내에 페더레이션된 테이블로 테이블을 만들고 페더레이션의 배포 제약 조건(distribution_name)을 테이블 내의 지정된 페더레이션 열(column_name)에 적용합니다. 페더레이션된 테이블에는 다음과 같은 특징이 있습니다.

  • 페더레이션된 테이블의 페더레이션 열에는 페더레이션 멤버 range_low(포함) 및 range_high(제외)에 해당하는 데이터만 포함될 수 있습니다.

  • 페더레이션 열의 데이터 형식은 페더레이션 정의에 정의된 데이터 형식과 정확히 일치해야 합니다.

  • 페더레이션된 테이블의 모든 고유 인덱스 및 클러스터형 인덱스에는 페더레이션 열이 포함되어야 합니다. 페더레이션 열이 인덱스에 나타나는 순서는 페더레이션의 키 서수와 다를 수 있습니다.

  • 페더레이션 열 값은 페더레이션 멤버 범위 외부의 값으로 업데이트할 수 없습니다.

  • 페더레이션 열은 지속형 또는 비지속형 계산 열일 수 없습니다.

  • 페더레이션된 테이블에 대한 인덱싱된 뷰를 만들 수 없습니다.

  • 페더레이션 열에는 Null이 허용되지 않습니다.

  • 페더레이션된 테이블에 대한 모든 FOREIGN KEY 제약 조건에는 외래 키의 동일한 서수 위치에 있는 참조 테이블과 참조된 테이블의 페더레이션 열이 포함되어야 합니다. 참조 테이블은 페더레이션된 테이블과 외래 키 관계를 맺을 수 없습니다. 페더레이션된 테이블은 제한 없이 참조 테이블과 외래 키 관계를 맺을 수 있습니다.

  • 일반적으로 FEDERATED ON 절을 사용하여 만든 테이블을 삭제할 수 있습니다. ALTER TABLE을 사용하여 페더레이션 키와 같은 페더레이션 특성을 제외하고 페더레이션된 테이블의 모든 속성을 변경할 수 있습니다. 참조 테이블을 페더레이션된 테이블로 변경하거나 페더레이션된 테이블을 참조 테이블로 변경하려면 원하는 속성이 포함된 새 테이블을 만들고 기존 테이블을 삭제해야 합니다.

  • 테이블이 STATISTICS_NORECOMPUTE로 표시된 경우 SPLIT과 같은 페더레이션 작업은 통계를 무효화하거나 다시 계산하지 않습니다. 이에 따라 SPLIT 등의 다시 분할 작업 후에는 실행 계획 문제가 발생할 수 있습니다.

  • 페더레이션 테이블은 ID 속성을 지원하지 않습니다.

  • 페더레이션된 테이블은 timestamp 및 rowversion 데이터 형식을 지원하지 않습니다.

인수 및 CREATE TABLE 문에 대한 자세한 내용은 SQL Server 온라인 설명서의 CREATE TABLE(Transact-SQL)을 참조하십시오.

Microsoft Azure SQL 데이터베이스는 힙 테이블을 지원하지 않기 때문에 테이블에 클러스터형 인덱스가 있어야 합니다. 테이블이 클러스터형 제약 조건 없이 만들어진 경우 클러스터형 인덱스를 만들어야 테이블에서 삽입 작업이 가능합니다.

이 정보가 도움이 되었습니까?
(1500자 남음)
의견을 주셔서 감사합니다.
표시:
© 2014 Microsoft