Thả chỉ mục MongoDB

db. thu thập. dropIndex()¶db. thu thập. dropIndex(chỉ mục)¶

Xóa hoặc xóa chỉ mục đã chỉ định khỏi bộ sưu tập. db. thu thập. Phương thức dropIndex() cung cấp một trình bao quanh lệnh dropIndexes .

db db. thu thập. Phương thức dropIndex() nhận tham số sau.

参数
  • chỉ mục – Chỉ định tên hoặc khóa của chỉ mục sẽ bỏ. Bạn phải sử dụng tên của chỉ mục nếu bạn đã chỉ định tên trong quá trình tạo chỉ mục

db db. thu thập. dropIndex() không thể xóa chỉ mục _id . Sử dụng db. thu thập. getIndexes() để xem tất cả các chỉ mục trên một bộ sưu tập.

Hãy xem xét các ví dụ sau về db. thu thập. dropIndex() phương thức giả định các chỉ mục sau trên bộ sưu tập thú cưng .

> db.pets.getIndexes()
[
   {  "v" : 1,
      "key" : { "_id" : 1 },
      "ns" : "test.pets",
      "name" : "_id_"
   },
   {
      "v" : 1,
      "key" : { "cat" : -1 },
      "ns" : "test.pets",
      "name" : "catIdx"
   },
   {
      "v" : 1,
      "key" : { "cat" : 1, "dog" : -1 },
      "ns" : "test.pets",
      "name" : "cat_1_dog_-1"
   }
]

  • Để xóa chỉ mục trên trường cat , bạn phải sử dụng tên chỉ mục catIdx:

    db.pets.dropIndex( 'catIdx' )
    

  • Để bỏ chỉ mục trên các trường mèochó, you use either the index name cat_1_dog_-1 or the key { "cat" : 1, "chó" . -1 } .

    db.pets.dropIndex( 'cat_1_dog_-1' )
    
    db.pets.dropIndex( { cat : 1, dog : -1 } )
    

  • <   db. thu thập. làm rơi()
  • /\  参考
  • db. thu thập. dropIndexes()  >

Chỉ định chỉ mục để loại bỏ. Bạn có thể chỉ định chỉ mục theo tên chỉ mục hoặc theo tài liệu đặc tả chỉ mục. [1]

Để bỏ chỉ mục văn bản, hãy chỉ định tên chỉ mục

Để lấy tên chỉ mục hoặc tài liệu đặc tả chỉ mục cho db. thu thập. dropIndex() , hãy sử dụng db. thu thập. phương thức getIndexes() .

Thí dụ¶

Xem xét bộ sưu tập thú cưng . Gọi phương thức getIndexes() trên bộ sưu tập pets sẽ trả về các chỉ mục sau.

[
   {  "v" : 1,
      "key" : { "_id" : 1 },
      "ns" : "test.pets",
      "name" : "_id_"
   },
   {
      "v" : 1,
      "key" : { "cat" : -1 },
      "ns" : "test.pets",
      "name" : "catIdx"
   },
   {
      "v" : 1,
      "key" : { "cat" : 1, "dog" : -1 },
      "ns" : "test.pets",
      "name" : "cat_1_dog_-1"
   }
]

Chỉ mục trường đơn trên trường cat có tên do người dùng chỉ định là catIdx [2] and the index specification document of { "cat" : -1 } .

Để xóa chỉ mục catIdx , bạn có thể sử dụng tên chỉ mục.

db.pets.dropIndex( "catIdx" )

Hoặc bạn có thể sử dụng tài liệu đặc tả chỉ mục { "cat" . -1 } .

db.pets.dropIndex( { "cat" : -1 } )

[1](1, 2) Khi sử dụng mongo phiên bản shell cũ hơn 2. 2. 2, nếu bạn đã chỉ định tên trong quá trình tạo chỉ mục, bạn phải sử dụng tên đó để bỏ chỉ mục. [2]Trong quá trình tạo chỉ mục, nếu người dùng không chỉ định tên chỉ mục, hệ thống sẽ tạo tên bằng cách nối trường khóa chỉ mục và giá trị với dấu gạch dưới, e. g. cat_1 .

←   db. thu thập. drop() db. thu thập. dropIndexes()  →

© MongoDB, Inc 2008-2017. MongoDB, Mongo và logo chiếc lá là các nhãn hiệu đã đăng ký của MongoDB, Inc

Drop() có nghĩa là gì MongoDB?

Trong MongoDB, db. thu thập. drop() được sử dụng để xóa một bộ sưu tập khỏi cơ sở dữ liệu . Nó loại bỏ hoàn toàn một bộ sưu tập khỏi cơ sở dữ liệu và không để lại bất kỳ chỉ mục nào liên quan đến các bộ sưu tập bị loại bỏ.

Không thể xóa chỉ mục nào trong MongoDB?

Mặc định _id Chỉ mục . Chỉ mục _id ngăn khách hàng chèn hai tài liệu có cùng giá trị cho trường _id. Bạn không thể bỏ chỉ mục này vào trường _id.

Phương pháp nào xóa nhiều chỉ mục trên một bộ sưu tập?

Phương thức dropIndexes() .