2

SQL Server 2008을 사용하고 있습니다.SQL Server : 이름을 지정하지 않고 비 클러스터형 인덱스 만들기

테이블에 비 클러스터형 인덱스를 만들려고합니다. 인덱스에 이름을 지정하지 않고이를 생성하는 방법이 있는지 확인하고 싶습니다.

예 :

CREATE TABLE #mytable (Date_ datetime NOT NULL, ID_ varchar(10) NOT NULL, Value_) 

이 표에 PK를 추가 할 때 해당 키의 이름을 지정하지 않았습니다. 예 :

ALTER TABLE #mytable ADD PRIMARY KEY CLUSTERED (Date_ ASC, ID_ ASC) 

이름을 지정하지 않고 비 클러스터형 인덱스를 만들 수 있습니까?

예 :

ALTER TABLE #mytable ADD NONCLUSTERED INDEX (Date_, Value_) -- FAILS!!! 

내가 아는 유일한 명령은

CREATE NONCLUSTERED INDEX *keyname* ON #mytable (Date_, Value_) 
+1

아니, 거기에 이름을 부여하지 않고 인덱스를 생성에 대한 지원은 없다 - ** 어쨌든하고 싶지 왜 지구에 **와? 그러한 색인을 어떻게 관리 하시겠습니까? (다시 작성하거나 필요시 다시 구성하십시오. 더 이상 필요하지 않을 때 삭제하십시오) .... –

답변

1

아니, 이름없이 클러스터되지 않은 인덱스를 만들 수 없습니다입니다, 구문은 매우 분명하다

CREATE [ UNIQUE ] [ CLUSTERED | NONCLUSTERED ] INDEX index_name 

index_name 인덱스의 이름입니다. 색인 이름은 표 또는 보기 내에서 고유해야하지만 데이터베이스 내에서 고유 할 필요는 없습니다. 색인 이름은 이어야하며 식별자 규칙을 따라야합니다. CREATE INDEX (Transact-SQL)

데이터베이스 개체 이름

은 식별자라고 부른다. Microsoft SQL Server의 모든 에는 식별자가있을 수 있습니다. 서버, 데이터베이스, 및 테이블, 뷰, 열, 인덱스, 트리거, 프로 시저, 제약 조건 및 규칙과 같은 데이터베이스 개체에는 식별자가있을 수 있습니다. 식별자는 대부분의 객체에 필요하지만 제약 조건과 같은 일부 객체의 경우 선택 사항입니다.

Database Identifiers