MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

MongoDB dropIndex()


Existem várias maneiras de descartar um índice no MongoDB, uma das quais é usar o dropIndex() método.

É bem simples de usar – basta passar o nome do índice ou seu documento de definição/especificação. Se for um índice de texto, você só pode especificar o nome do índice.

Exemplos de índices


Suponha que tenhamos uma coleção chamada bars . Podemos usar getIndexes() para ver quais índices ele tem:
db.bars.getIndexes()

Resultado:
[
	{
		"v" : 2,
		"key" : {
			"_id" : 1
		},
		"name" : "_id_"
	},
	{
		"v" : 2,
		"key" : {
			"location" : "2dsphere"
		},
		"name" : "location_2dsphere",
		"2dsphereIndexVersion" : 3
	},
	{
		"v" : 2,
		"key" : {
			"name" : 1
		},
		"name" : "name_1",
		"hidden" : true
	}
]

Podemos ver que existem três índices nas bars coleção.
  • O primeiro índice está no _id campo. MongoDB cria um índice exclusivo no _id campo durante a criação de uma coleção. Você não pode descartar este índice.
  • O segundo índice é um índice 2dsphere no location campo.
  • O terceiro índice está no name campo. Neste caso, é um índice oculto (tem "hidden" : true em sua especificação).

Solte um índice por nome


Aqui está um exemplo de como descartar um índice passando seu nome para o dropIndex() método:
db.bars.dropIndex("location_2dsphere")

Saída:
{ "nIndexesWas" : 3, "ok" : 1 }

Isso nos diz que o índice foi descartado com sucesso.

Solte um índice por sua especificação


Aqui está um exemplo de como descartar um índice passando seu documento de especificação para o dropIndex() método:
db.bars.dropIndex( { "name" : 1 } )

Saída:
{ "nIndexesWas" : 2, "ok" : 1 }

Podemos ver que esse índice também foi descartado.

Você vai lembrar que este é o índice que estava oculto. Você pode descartar índices ocultos sem problemas (você não precisa reexibi-los antes de eliminá-los).

Verifique os resultados


Vamos executar getIndexes() novamente para ver os resultados:
db.bars.getIndexes()

Resultado:
[ { "v" : 2, "key" : { "_id" : 1 }, "name" : "_id_" } ]

Desta vez, há apenas um índice – o padrão _id índice.

O dropIndex() método é um wrapper em torno do dropIndexes comando.

Documentação do MongoDB


Consulte a documentação do MongoDB para obter mais informações sobre o dropIndex() método.