MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

MongoDB - Tạo Bộ sưu tập

Bạn có thể tạo một bộ sưu tập bằng cách sử dụng createCollection() hoặc nhanh chóng khi bạn chèn tài liệu.

Bộ sưu tập giống như các thùng chứa các tài liệu liên quan. Chúng thường được sử dụng để nhóm các tài liệu của một chủ đề tương tự. Ví dụ:bạn có thể có tên bộ sưu tập như người dùng , pageviews , posts , comments , v.v.

Khi chúng tôi tạo cơ sở dữ liệu của mình, chúng tôi đã tạo một bộ sưu tập có tên là artist . Bộ sưu tập này sẽ chứa các tài liệu có thông tin chi tiết về nghệ sĩ, chẳng hạn như tên nghệ sĩ, album họ đã phát hành, v.v.

Hai cách để tạo Bộ sưu tập

Dưới đây là hai cách tạo bộ sưu tập:

  • Bạn có thể tạo bộ sưu tập một cách nhanh chóng khi chèn tài liệu (sử dụng insert() phương pháp.
  • Bạn cũng có thể tạo bộ sưu tập một cách rõ ràng bằng cách sử dụng createCollection() phương pháp.

Đang bay

Khi bạn sử dụng insert() để chèn một tài liệu, bạn chỉ định bộ sưu tập mà tài liệu sẽ được chèn vào. Nếu bộ sưu tập chưa tồn tại, nó sẽ được tạo.

Đây là phương pháp mà chúng tôi đã sử dụng trước đây khi tạo artists bộ sưu tập trong khi chèn tài liệu.

Đây là mã mà chúng tôi đã sử dụng:

db.artists.insert({ artistname: "The Tea Party" })

Trong trường hợp này, các artists bộ sưu tập trước đây không tồn tại nên nó đã được tạo cho chúng tôi.

Sử dụng createCollection() Phương pháp

Bạn cũng có thể tạo bộ sưu tập bằng cách sử dụng createCollection() phương pháp. Điều này cho phép bạn tạo một bộ sưu tập mà không cần chèn tài liệu.

Đây là một ví dụ về việc sử dụng createCollection() phương pháp:

db.createCollection("producers")

Với các tùy chọn

Bạn cũng có thể chỉ định các tùy chọn cho bộ sưu tập bằng cách sử dụng db.createCollection(name, options) cú pháp.

Đây là một ví dụ:

db.createCollection("log", { capped : true, size : 4500500, max : 4000 } )

Các trường khả dụng của MongoDB phiên bản 3.2 như sau.

Field Loại Mô tả
capped boolean Khi được đặt thành true , tạo ra một bộ sưu tập có giới hạn. Bộ sưu tập có giới hạn là bộ sưu tập có kích thước cố định tự động ghi đè các mục nhập cũ nhất của nó khi nó đạt đến kích thước tối đa. Nếu bạn chỉ định true , bạn cũng phải đặt kích thước tối đa trong size lĩnh vực.
autoIndexId boolean Chỉ định false để tắt tính năng tự động tạo chỉ mục trên _id đồng ruộng. Kể từ phiên bản MongoDB 3.2, trường này không được dùng nữa và nó sẽ bị xóa trong phiên bản 3.4.
size số Kích thước tối đa tính bằng byte cho bộ sưu tập có giới hạn. Chỉ được sử dụng với các bộ sưu tập có giới hạn (nó bị bỏ qua trong các bộ sưu tập khác).
max số Số lượng tài liệu tối đa được phép trong bộ sưu tập có giới hạn. Lưu ý rằng kích thước size trường được ưu tiên hơn trường max đồng ruộng. Nếu bộ sưu tập đạt đến giới hạn kích thước trước khi đạt đến giới hạn tài liệu, thì MongoDB vẫn sẽ xóa tài liệu.
usePowerOf2Sizes boolean Chỉ khả dụng trong công cụ lưu trữ MMAPv1. Trường này không được dùng nữa kể từ phiên bản 3.0.
noPadding boolean Chỉ khả dụng trong công cụ lưu trữ MMAPv1. Tắt khả năng phân bổ 2 kích thước cho bộ sưu tập. Mặc định thành false .
storageEngine tài liệu Chỉ khả dụng trong công cụ lưu trữ WiredTiger. Cho phép cấu hình công cụ lưu trữ trên cơ sở mỗi bộ sưu tập khi tạo bộ sưu tập. Cú pháp như sau:{ <storage-engine-name>: <options> }
validator tài liệu Cho phép bạn chỉ định các quy tắc hoặc biểu thức xác thực cho bộ sưu tập. Lưu ý rằng xác thực chỉ được áp dụng khi chèn và cập nhật dữ liệu. Do đó, dữ liệu đã tồn tại trong cơ sở dữ liệu không được xác thực (cho đến khi nó được cập nhật).
validationLevel chuỗi Cho phép bạn chỉ định mức độ nghiêm ngặt của bất kỳ quy tắc xác thực nào được áp dụng cho các tài liệu hiện có trong quá trình cập nhật. Giá trị có thể:
off Không có xác thực nào xảy ra đối với các chèn hoặc cập nhật.
strict Xác thực xảy ra đối với các chèn và cập nhật. đây là giá trị mặc định.
moderate Quy tắc xác thực chỉ được áp dụng cho hợp lệ hiện có tài liệu, nhưng không hiện tại không hợp lệ tài liệu.
validationAction chuỗi Chỉ định xem sẽ xảy ra lỗi hay chỉ là cảnh báo khi các tài liệu không hợp lệ được chèn vào. Nếu có lỗi, các tài liệu không hợp lệ sẽ vẫn được chèn nhưng có cảnh báo.
error Chỉ định rằng lỗi xảy ra khi tài liệu không hợp lệ đang được viết và thao tác không thành công.
warning Chỉ định rằng các tài liệu không hợp lệ vẫn có thể được viết và cảnh báo sẽ được ghi lại.
indexOptionDefaults tài liệu Cho phép bạn chỉ định cấu hình mặc định cho các chỉ mục khi tạo một bộ sưu tập. Chấp nhận storageEngine tài liệu với cú pháp sau:{:}

  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Truy vấn Java / MongoDB theo ngày

  2. 3 cách chuyển đổi chuỗi thành ngày trong MongoDB

  3. nhiều toán tử cập nhật mongo trong một câu lệnh?

  4. Đặt ngày mặc định khi chèn tài liệu với trường thời gian.

  5. tìm id của subocument mới nhất được chèn vào mongoose