Trong MongoDB, db. createCollection(name, options) được sử dụng để tạo bộ sưu tập. Nhưng thường thì bạn không cần phải tạo bộ sưu tập. MongoDB tự động tạo bộ sưu tập khi bạn chèn một số tài liệu. Nó sẽ được giải thích sau. Trước tiên hãy xem cách tạo bộ sưu tập
cú pháp
Nơi đây,
Tên. là một loại chuỗi, chỉ định tên của bộ sưu tập sẽ được tạo
Tùy chọn. là một loại tài liệu, chỉ định kích thước bộ nhớ và lập chỉ mục của bộ sưu tập. Nó là một tham số tùy chọn
Sau đây là danh sách các tùy chọn có thể được sử dụng
FieldTypeDescriptionCappedBoolean(Tùy chọn) Nếu nó được đặt thành true, hãy bật bộ sưu tập 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 đè lên các mục nhập cũ nhất khi đạt đến kích thước tối đa. Nếu bạn chỉ định đúng, bạn cũng cần chỉ định tham số kích thước. AutoIndexIDBoolean(Tùy chọn) Nếu nó được đặt thành true, tự động tạo chỉ mục trên trường ID. Giá trị mặc định của nó là sai. SizeNumber (Tùy chọn) Nó chỉ định kích thước tối đa tính bằng byte cho bộ sưu tập được giới hạn. Nếu capped là đúng, thì bạn cũng cần chỉ định trường này. MaxNumber (Tùy chọn) Nó chỉ định số lượng tài liệu tối đa được phép trong bộ sưu tập giới hạnHãy lấy một ví dụ để tạo bộ sưu tập. Trong ví dụ này, chúng ta sẽ tạo tên bộ sưu tập SSSIT
Để kiểm tra bộ sưu tập đã tạo, hãy sử dụng lệnh "hiển thị bộ sưu tập"
MongoDB tự động tạo bộ sưu tập như thế nào
MongoDB tự động tạo các bộ sưu tập khi bạn chèn một số tài liệu. Ví dụ. Chèn tài liệu có tên seomount vào bộ sưu tập có tên SSSIT. Hoạt động sẽ tạo bộ sưu tập nếu bộ sưu tập hiện không tồn tại
Bộ sưu tập giống như 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ó cùng chủ đề. Ví dụ: bạn có thể có các tên bộ sưu tập như người dùng, testset:PRIMARY> use test switched to db test testset:PRIMARY>db test 4, testset:PRIMARY> use test switched to db test testset:PRIMARY>db test 5, testset:PRIMARY> use test switched to db test testset:PRIMARY>db test 6, 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à nghệ sĩ. 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 một 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 nhanh chóng khi chèn tài liệu (sử dụng phương pháp testset:PRIMARY> use test switched to db test testset:PRIMARY>db test 7
- Bạn cũng có thể tạo một bộ sưu tập một cách rõ ràng, sử dụng phương pháp testset:PRIMARY> use test switched to db test testset:PRIMARY>db test 8
Một cách nhanh chóng
Khi bạn sử dụng phương pháp testset:PRIMARY> use test switched to db test testset:PRIMARY>db test 7 để chèn 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 chúng tôi tạo bộ sưu tập testset:PRIMARY>db.createCollection("i2tutorial") { "ok" : 1 } 0 của mình trong khi chèn tài liệu
Đây là mã mà chúng tôi đã sử dụng
Trong trường hợp này, bộ sưu tập testset:PRIMARY>db.createCollection("i2tutorial") { "ok" : 1 } 0 trước đây không tồn tại nên nó được tạo cho chúng tôi
Sử dụng Phương pháp testset:PRIMARY> use test switched to db test testset:PRIMARY>db test 8
Bạn cũng có thể tạo các bộ sưu tập bằng phương pháp testset:PRIMARY> use test switched to db test testset:PRIMARY>db test 8. Đ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
Trong mongoDB, Bộ sưu tập chẳng qua là nơi chứa tất cả các tài liệu. Nó gần như tương đương với bảng trong RDBMS, là sự kết hợp của các hàng và cột. Chúng tôi có thể Tạo bộ sưu tập bằng cách sử dụng cú pháp dưới đây
Syntax:db.createCollections(name, options)Tham sốTypeDescriptionNamestringName của bộ sưu tậpOptionsdocumentOptional. Tùy chọn cấu hình để tạo bộ sưu tập giới hạn, để phân bổ trước không gian trong bộ sưu tập mới hoặc để tạo chế độ xem
Ví dụ.
Sử dụng cơ sở dữ liệu thử nghiệm và xác minh cơ sở dữ liệu mà bạn đang ở trong đó.
Tạo bộ sưu tập có tên “i2tutorial” bằng cách sử dụng lệnh bên dưới
testset:PRIMARY>db.createCollection("i2tutorial") { "ok" : 1 }Kiểm tra bộ sưu tập mà bạn đã tạo
testset:PRIMARY> show collections i2tutorial mycollection system.indexesNgoài ra, bạn có thể tự động tạo các bộ sưu tập bằng cách chèn một tài liệu vào đó
Example: testset:PRIMARY> show collections i2tutorial mycollection system.indexesChèn dữ liệu vào bộ sưu tập có tên ” imongo”
testset:PRIMARY>db.imongo.insert({"name":"maria","city":"Banglore"}) WriteResult({ "nInserted" : 1 })Kiểm tra xem bộ sưu tập imongo và dữ liệu được chèn có tồn tại hay không
testset:PRIMARY> show collections i2tutorial imongo mycollection system.indexes testset:PRIMARY>db.imongo.find() { "_id" : ObjectId("5924462a5273c93ad95b109a"), "name" : "maria", "city" : "Banglore" }Khi bạn tạo một cơ sở dữ liệu trong MongoDB, cơ sở dữ liệu của bạn về cơ bản là một vùng chứa trống mà bạn có thể thêm một hoặc nhiều bộ sưu tập vào đó.
Một bộ sưu tập tương tự như một bảng trong cơ sở dữ liệu quan hệ
Trong cơ sở dữ liệu quan hệ, bạn có thể sử dụng testset:PRIMARY>db.createCollection("i2tutorial") { "ok" : 1 } 4 để tạo từng bảng mà bạn muốn trong cơ sở dữ liệu
Nhưng MongoDB không phải là cơ sở dữ liệu quan hệ và nó lưu trữ dữ liệu của nó dưới dạng tài liệu. Mỗi tài liệu được lưu trữ trong một bộ sưu tập
Bài viết này hướng dẫn bạn cách tạo bộ sưu tập trong MongoDB
Hai lựa chọn
Bạn có hai tùy chọn để tạo bộ sưu tập trong MongoDB
- ngầm định
- rõ ràng
Đây là một ví dụ về từng cái
Tạo một bộ sưu tập – Ngầm định
Bạn có thể tạo một bộ sưu tập hoàn toàn bằng cách thêm một tài liệu vào một bộ sưu tập không tồn tại. Khi bạn làm điều này, bộ sưu tập sẽ được tạo nếu nó chưa tồn tại
Đây là một ví dụ về việc ngầm tạo một bộ sưu tập
db.pets.insert({ name: "Fetch" })Điều đó tạo ra một bộ sưu tập có tên là testset:PRIMARY>db.createCollection("i2tutorial") { "ok" : 1 } 5 và chèn một tài liệu vào đó
Trên thực tế, nó chỉ tạo bộ sưu tập nếu nó chưa tồn tại. Nếu nó đã tồn tại, thì nó chỉ cần chèn tài liệu vào bộ sưu tập hiện có của tên đó
Về cơ bản, cú pháp diễn ra như thế này
________số 8Trong đó testset:PRIMARY>db.createCollection("i2tutorial") { "ok" : 1 } 6 là tên của bộ sưu tập
Tạo Bộ sưu tập – Rõ ràng
Bạn cũng có thể tạo các bộ sưu tập một cách rõ ràng bằng phương pháp db.<collection>.insert()0. Phương pháp này cho phép bạn chỉ định các tùy chọn khác nhau, chẳng hạn như đặt kích thước tối đa hoặc quy tắc xác thực tài liệu
Điều này tương tự như câu lệnh db.<collection>.insert()1 trong SQL. Phải nói rằng, MongoDB không yêu cầu bạn chỉ định các cột, kiểu dữ liệu, v.v. như bạn cần chỉ định với câu lệnh testset:PRIMARY>db.createCollection("i2tutorial") { "ok" : 1 } 4 khi sử dụng cơ sở dữ liệu quan hệ
Đây là một ví dụ về việc sử dụng phương pháp db.<collection>.insert()0 để tạo một bộ sưu tập
testset:PRIMARY> use test switched to db test testset:PRIMARY>db test 2Kết quả
testset:PRIMARY> use test switched to db test testset:PRIMARY>db test 3Trong ví dụ này, tôi không chỉ định bất kỳ tùy chọn nào. Vì vậy, không có lợi ích thực sự của việc tạo ra nó giống như câu này tạo ra nó một cách ngầm định (như trong ví dụ trước)
Tuy nhiên, nếu bạn muốn chỉ định các tùy chọn cho bộ sưu tập của mình, thì cách tốt nhất là tạo nó một cách rõ ràng.