次の SQL はインデックスも削除しますか? それとも個別に削除する必要がありますか?
CREATE TABLE #Tbl (field int)
CREATE NONCLUSTERED INDEX idx ON #Tbl (field)
DROP TABLE #Tbl
次の SQL はインデックスも削除しますか? それとも個別に削除する必要がありますか?
CREATE TABLE #Tbl (field int)
CREATE NONCLUSTERED INDEX idx ON #Tbl (field)
DROP TABLE #Tbl
はい、そうです。MSSQL ヘルプで CREATE INDEX の記事を検索できます。
「インデックスは一時テーブルに作成できます。テーブルが削除されるか、セッションが終了すると、すべてのインデックスとトリガーが削除されます。」
インデックスに何も残っていないため、自動的に削除されます。この点で、それを子オブジェクトと考えてください。
drop table はインデックスを削除します。Drop Index は、インデックス名とテーブル名を取ります。
この場合、DROP INDEX idc ON #tbl になります。
これは、インデックスを削除してテーブルを残したい場合に呼び出すことができます。