Les index sur les tables temporaires sont-ils supprimés lorsque la table est supprimée?
-
01-07-2019 - |
Question
Le code SQL suivant supprimerait-il également l'index - ou doit-il être supprimé séparément?
CREATE TABLE #Tbl (field int)
CREATE NONCLUSTERED INDEX idx ON #Tbl (field)
DROP TABLE #Tbl
La solution
Oui, ils le sont. Vous pouvez rechercher dans l’aide de MSSQL l’article CREATE INDEX indiqué ici:
"Des index peuvent être créés sur une base temporaire. table. Lorsque la table est supprimée ou la session se termine, tous les index et les déclencheurs sont supprimés. "
Autres conseils
Il sera supprimé automatiquement car il ne reste plus rien à indexer. Pensez-y comme un objet enfant à cet égard.
La table de suppression supprimera l'index. Drop Index prend le nom de l'index et le nom de la table.
Dans ce cas, DROP INDEX idc ON #tbl serait
.qui peut être appelé si vous souhaitez supprimer l'index tout en laissant la table.