2016-05-12 26 views
0

私はSQLで新しく、Microsoft SQL Serverを使用していくつかの演習を行っています。このインデックスを作成した後、インデックスを削除しようとしていますが、それは制約ではないと言います。しかし、custIDカラムはそれがPRIMARY KEYであることを示します。インデックスを削除しようとしてエラーが発生しました

これは私がやったことです:

CREATE INDEX indexcustInfoID ON tblCustomerIDInfo (CustID) 

ALTER TABLE tblCustomerIDInfo 
DROP CONSTRAINT indexcustInfoID 

エラー:

Msg 3728, Level 16, State 1, Line 26
'indexcustInfoID' is not a constraint.

Msg 3727, Level 16, State 0, Line 26
Could not drop constraint. See previous errors.

私を助けてください!

+2

あなたは主キーにインデックスを追加する必要はありません - 1が自動的に作成されます。 –

+0

ああ私はそれを得た。私は彼らがMySQLを使用し、男がそれを好きでしたが、私はSQL Serverを使用しているビデオに従っていた。インデックスの作成と削除の両方に違いはありますか? – Gracie

答えて

2

DROP INDEXの代わりにDROP CONSTRAINTが必要です。 DROP CONSTRAINTは、主キー用に作成されたインデックスとUNIQUE制約にのみ適用されます。これは主キー制約自体ではなく、という別のインデックスを主キー列に追加したようです。 MSDNから

The DROP INDEX statement does not apply to indexes created by defining PRIMARY KEY or UNIQUE constraints. To remove the constraint and corresponding index, use ALTER TABLE with the DROP CONSTRAINT clause.

関連する問題