Chúng ta có thể nhập json trong mongodb không?

Các chương trình bên dưới sẽ nhập tất cả các tài liệu từ một tệp với một tài liệu trên mỗi dòng vào bộ sưu tập. Có hai phiên bản của chương trình, một phiên bản sử dụng API đồng bộ và phiên bản còn lại sử dụng API không đồng bộ

Khi sử dụng MongoDB, bạn có thể sử dụng

mongoimport --db=PetHotel --file=pets.json
1 để nhập tài liệu vào bộ sưu tập.
mongoimport --db=PetHotel --file=pets.json
1 là tiện ích dòng lệnh nhập nội dung từ tệp JSON, CSV hoặc TSV mở rộng. Tệp nhập có thể đã được tạo bởi
mongoimport --db=PetHotel --file=pets.json
3 hoặc một số tiện ích xuất khác

Bài viết này trình bày các ví dụ về nhập tệp JSON vào MongoDB

Thí dụ

Giả sử chúng ta có tệp JSON sau có tên là

mongoimport --db=PetHotel --file=pets.json
4

{ "_id" : 1, "name" : "Wag", "type" : "Dog" }
{ "_id" : 2, "name" : "Bark", "type" : "Dog" }
{ "_id" : 3, "name" : "Meow", "type" : "Cat" }

Lệnh sau nhập tệp JSON vào MongoDB

mongoimport --db=PetHotel --file=pets.json

Trong trường hợp này, tôi đã không chỉ định một bộ sưu tập để nhập nó vào, vì vậy nó đã tạo một bộ sưu tập có cùng tên của tệp (

mongoimport --db=PetHotel --file=pets.json
5)

Kiểm tra kết quả

Hãy cùng xem qua bộ sưu tập

db.pets.find()

Kết quả

{ "_id" : 1, "name" : "Wag", "type" : "Dog" }
{ "_id" : 2, "name" : "Bark", "type" : "Dog" }
{ "_id" : 3, "name" : "Meow", "type" : "Cat" }

Chúng ta có thể thấy rằng các tài liệu đã được nhập như mong đợi

Chỉ định tên bộ sưu tập

Bạn có thể sử dụng tham số

mongoimport --db=PetHotel --file=pets.json
6 (hoặc
mongoimport --db=PetHotel --file=pets.json
7) để chỉ định một bộ sưu tập để nhập tệp vào

Đây là một ví dụ về việc sử dụng tham số

mongoimport --db=PetHotel --file=pets.json
6 để nhập cùng một tệp vào một bộ sưu tập khác

mongoimport --db=PetHotel --file=pets.json
2

Nếu bộ sưu tập chưa tồn tại, nó sẽ được tạo. Nếu nó đã tồn tại, thì kết quả nhập sẽ phụ thuộc vào chế độ bạn đang sử dụng (thêm về điều này bên dưới)

Thả bộ sưu tập trước khi nhập

Bạn có thể sử dụng tham số

mongoimport --db=PetHotel --file=pets.json
9 để xóa bất kỳ bộ sưu tập hiện có nào có cùng tên với bộ sưu tập bạn đang cố tạo/nhập

Hãy tưởng tượng chúng ta có một tệp thứ hai, được gọi là

db.pets.find()
0, với tài liệu sau

mongoimport --db=PetHotel --file=pets.json
5

Đây là điều sẽ xảy ra nếu tôi nhập tài liệu đó vào bộ sưu tập

mongoimport --db=PetHotel --file=pets.json
5 bằng tùy chọn
mongoimport --db=PetHotel --file=pets.json
9

mongoimport --db=PetHotel --file=pets.json
8

đầu ra

mongoimport --db=PetHotel --file=pets.json
9

Thông báo cho chúng tôi biết rằng bộ sưu tập đã bị hủy và một tài liệu đã được nhập

Hãy cùng xem qua bộ sưu tập

db.pets.find()

Kết quả

mongoimport --db=PetHotel --file=pets.json
1

Đúng như dự đoán, hai tài liệu mới của chúng tôi là những tài liệu duy nhất trong bộ sưu tập

Chế độ nhập

Có nhiều chế độ nhập khác nhau mà bạn có thể sử dụng với

mongoimport --db=PetHotel --file=pets.json
1. Các chế độ này xác định điều gì sẽ xảy ra nếu đã có tài liệu phù hợp trong bộ sưu tập mà bạn đang cố gắng nhập vào

Các chế độ như sau

Chế độ Mô tả
db.pets.find()
4Đây là chế độ mặc định. Chế độ này chèn tài liệu từ tệp nhập. Nếu một tài liệu phù hợp đã tồn tại trong bộ sưu tập, sẽ xảy ra lỗi. Tài liệu phù hợp là tài liệu có cùng ID duy nhất (chẳng hạn như trường
db.pets.find()
5 phù hợp) với tài liệu trong tệp nhập.
db.pets.find()
6Thay thế các tài liệu hiện có trong cơ sở dữ liệu bằng các tài liệu phù hợp từ tệp nhập. Tất cả các tài liệu khác được đưa vào.
db.pets.find()
7Hợp nhất các tài liệu hiện có khớp với tài liệu trong tệp nhập với tài liệu mới. Tất cả các tài liệu khác được đưa vào.
db.pets.find()
8Xóa tài liệu hiện có trong cơ sở dữ liệu khớp với tài liệu trong tệp nhập. Mọi tài liệu không khớp đều không có hiệu lực

Xem Chế độ nhập của

mongoimport --db=PetHotel --file=pets.json
1 để biết ví dụ về từng chế độ

Kiểm tra mongoimport --db=PetHotel --file=pets.json1

mongoimport --db=PetHotel --file=pets.json
1 là một phần của gói Công cụ cơ sở dữ liệu MongoDB. MongoDB Database Tools là một bộ tiện ích dòng lệnh để làm việc với MongoDB

Nếu bạn không chắc mình đã cài đặt MongoDB Database Tools/

mongoimport --db=PetHotel --file=pets.json
1 hay chưa, hãy thử chạy lệnh sau trong Terminal hoặc Command Prompt để kiểm tra

mongoimport --db=PetHotel --file=pets.json
0

Nếu bạn có nó, bạn sẽ thấy thông tin phiên bản, v.v. Nếu bạn không có nó, bạn có thể sử dụng hướng dẫn cài đặt trên trang web MongoDB để cài đặt nó vào hệ thống của bạn

Nơi để chạy các lệnh?

Đừng quên, bạn cần chạy các lệnh

mongoimport --db=PetHotel --file=pets.json
1 từ dòng lệnh của hệ thống (e. g. cửa sổ Terminal hoặc Command Prompt mới)

Làm cách nào để thêm dữ liệu từ JSON vào MongoDB?

Cách nhập JSON vào MongoDB và chèn JSON vào la bàn MongoDB .
Bây giờ bạn phải chèn tệp JSON vào la bàn MongoDB, vì vậy hãy nhấp vào bộ sưu tập (sinh viên) mà bạn đã tạo
Nhấp vào nút nhập dữ liệu và chọn tệp bạn muốn nhập (tệp JSON) đồng thời chọn loại tệp đầu vào và nhấp vào nút nhập

Tôi có thể nhập dữ liệu vào MongoDB không?

MongoDB Compass có thể nhập dữ liệu vào bộ sưu tập từ tệp JSON hoặc CSV .