Hướng dẫn lập trình MongoDB cơ bản
VTC Academy VTC Academy
Hướng dẫn lập trình MongoDB cơ bản

Hướng dẫn lập trình MongoDB cơ bản

Ngày đăng 07/11/2018
Trong những năm gần đây, với sự ra đời và phát triển mạnh mẽ của NoSQL thì MongoDB cũng đang nhận được nhiều sự chú ý trong cộng đồng công nghệ. Điểm mạnh của NoSQL nói chung và MongoDB nói riêng đó là tính linh hoạt trong việc cấu trúc dữ liệu do đó nó giúp đáp ứng tốt với những thay đổi hay việc mở rộng cơ sở dữ liệu. Trong bài viết này chúng ta sẽ cùng nhau tìm hiểu những khái niệm cơ bản trong MongoDB và cách sử dụng chúng.
MongoDB Là Gì?

MongoDB là một chương trình cơ sở dữ liệu mã nguồn mở được thiết kế theo kiểu hướng đối tượng trong đó các bảng được cấu trúc một cách linh hoạt cho phép các dữ liệu lưu trên bảng không cần phải tuân theo một dạng cấu trúc nhất định nào. Chính do cấu trúc linh hoạt này nên MongoDB có thể đượng dùng để lưu trữ các dữ liệu có cấu trúc phức tạp và đa dạng và không cố định (hay còn gọi là Big Data).

Tuy nhiên khi đưa ra định nghĩa như ở trên tôi đã sử dụng khái niệm bảng trong các cơ sở dữ liệu có quan hệ để bạn có thể dễ hiểu. Trên thực tế thì MongoDB sử dụng thuật ngữ khác là collection hay bộ sưu tập thay vì bảng. Các cơ sở dữ liệu quan hệ (như MySQL hay SQL Server…) sử dụng các bảng để lưu dữ liệu. Các bảng này được cấu trúc với một số lượng cột (column) nhất định và các cột này cũng được định nghĩa với kiểu dữ liệu nhất định. Ngược lại MongoDB lưu document (hay tài liệu tương tự như các record trong MySQL hay SQL Server) vào các collection với định dạng JSON hay Javascript Object Notation. Do đó khi truy vấn dữ liệu hay cập nhật dữ liệu của document trong MongoDB chúng ta sử dụng cú pháp theo kiểu hươngs đối tượng.

Bây giờ chúng ta cùng vào tìm hiểu chi tiết các khái niệm ở trên để có thể hiểu rõ hơn.

MongoDB Document

Như đã nói ở trên một document trong MongoDB có thể được hiểu tương đương như một record trong MySQL hay SQL Server. Tuy nhiên sự khác biệt đó là các document trong MongoDB không sử dụng cấu trúc cố định. Hãy xem ví dụ sau về một document trong MongoDB dùng để lưu dữ liệu của một người dùng trên một mạng xã hội:

Ở ví dụ trên dữ liệu của document được lưu theo kiểu kiểu JSON với các trường như name, age, status và groups. Mặc dù document ở trên chỉ có 4 trường nhưng MongoDB vẫn cho phép chúng ta có thể thêm vào một document khác với 5 trường hoặc 3 hay 2 trường. Đây chính là tính linh động của NoSQL.

MongoDB Collection

Collection trong MongoDB tương đương với các bảng sử dụng trong các cơ sở dữ liệu kiểu quan hệ. Collection bao gồm tập hợp tất cả các document riêng lẻ được lưu trên collection đó. Hãy xem một ví dụ sau đây minh hoạ về collection trong MongoDB.

Sự khác biệt cơ bản giữa collection và bảng trong MySQL hay SQL Server đó là bạn không phải định nghĩa một cấu trúc schema cố định nào cho Collection cả thay vào đó bạn chỉ cần định nghĩa tên cho collection và một số options khác như index hay size của collection.

Thêm Document Vào Collection

Bây giờ chúng ta hãy cùng xem một ví dụ tạo một document vào một collection có tên là users.

Ở trên bạn thấy cú pháp sử dụng để thêm document vào collection được viêt theo kiểu hướng đối tượng hoàn toàn khác với cú pháp của ngôn ngữ SQL thông thường. Chúng ta cũng không nhất thiết phải định nghĩa collection với tên là users trước khi có thể chạy câu lệnh để thêm một document như ở trên. MongoDB sẽ tự tạo cho bạn một collection với tên là users nếu như tại thời điểm bạn bạn chèn document vào database mà vẫn chưa có collection được tạo ra.

Tuy nhiên bạn vẫn cần phải thông báo cho MongoDB biết việc chèn document như trên được thực hiện ở cơ sở dữ liệu nào. Việc này được sử dụng thông qua câu lệnh tương tự như bạn hay dùng với các cơ sở dữ liệu có quan hệ:

use my_mongodb

Như vậy tới đây tôi đã giới thiệu cho bạn những kiến thức cơ bản về MongoDB và cách sử dụng một số câu lệnh đơn giản nhất.

Nguồn: Codehub

Hãy bắt đầu sự nghiệp của bạn bằng việc tham gia khóa học lập trình Web full-stack cơ bản và nâng cao tại Học viện VTC, nơi mọi ước mơ của bạn sẽ nhanh chóng được thực hiện.

Khóa học chuyên nghiệp Lập trình Web Full-stack:

  • Thời gian: 6 tháng (3 buổi tối/ tuần)
  • Chứng chỉ: Chứng chỉ đào tạo Lập trình Web Full-stack tại VTC Academy
  • Cam kết: Bảo hành việc làm trong 3 năm (thu nhập 6-12 triệu)
  • Đăng ký trực tuyến: Tại Đây

Khóa học dành cho:

  • Sinh viên năm 3,4 chuyên ngành CNTT tại các trường CĐ,ĐH
  • Người đi làm đã có kiến thức nền tảng về lập trình

Xếp hạng: 0 / 5. Lượt bình chọn: 0

Rất tiếc vì trải nghiệm không tốt của bạn về bài viết này!

Bạn có thể cho chúng tôi biết bạn chưa hài lòng vì điều gì không?

Tin tức khác
How to do #3:

How to do #3: "Những kĩ năng cần có của lập trình viên Android"

Ngày đăng 05/11/2018
How To Do là chuỗi sự kiện công nghệ được tổ chức tại VTC Academy thường niên mỗi tháng dành cho các bạn đang học và làm việc về hai khối ngành Lập trình và Thiết kế. Chương trình sẽ giúp các bạn giải quyết các vấn đề từ basic đến advance thông qua các diễn giả – những người đang làm nghề chuyên nghiệp từ các doanh nghiệp, studio,…
Bộ sưu tập 10 Front-End Framework chất lừ

Bộ sưu tập 10 Front-End Framework chất lừ

Ngày đăng 02/11/2018
Các front-end framework giúp bạn phát triển các trang web dễ dàng hơn. Vì vậy chúng rất phổ biên và có rất nhiều front-end framework có sẵn để bạn lựa chọn, cũng như những framework mới thường xuyên xuất hiện. Vì có nhiều sự lựa chọn, nên việc chọn một front-end framework phù hợp có thể trở nên khó khăn. Giống như nhiều lập trình viên khác, bạn có thể chọn một framework phổ biến như Bootstrap, Foundation. Nhưng một framework ít phổ biến hơn có thể phù hợp và hiệu quả hơn với nhu cầu của bạn, vì thế việc tìm hiểu những framework phổ biến nhất hiện nay cũng rất đáng giá.
Chàng kỹ sư cơ khí chuyển ngành: nhận học bổng V-Talents nhập học VTC Academy ngành Lập Trình Game

Chàng kỹ sư cơ khí chuyển ngành: nhận học bổng V-Talents nhập học VTC Academy ngành Lập Trình Game

Ngày đăng 25/10/2024
Lê Thiện Quang, một bạn trẻ đam mê lập trình và yêu thích game, đã trở thành một trong những học viên xuất sắc nhận được Học bổng V-Talents, nhập học VTC Academy. Với niềm đam mê đặc biệt dành cho game và quyết tâm theo đuổi đam mê trong lĩnh vực này, Quang đã không ngừng nỗ lực và tìm kiếm con đường phát triển sự nghiệp phù hợp với sở thích của mình.
Khóa học mới nhất
Chuyên viên <br>Lập trình game (Phát triển Game)

Chuyên viên
Lập trình game (Phát triển Game)

4.9 (1545)
Hình thức học: Tập trung
Thời hạn: 2 năm
Khối ngành: Công nghệ thông tin
Chuyên viên Thiết kế 3D (3D Modeling)

Chuyên viên Thiết kế 3D (3D Modeling)

4.9 (6576)
Hình thức học: Tập trung
Thời hạn: 2 năm
Khối ngành: Thiết kế
Chuyên viên Hoạt hình 3D (3D Animation)

Chuyên viên Hoạt hình 3D (3D Animation)

4.9 (6777)
Hình thức học: Tập trung
Thời hạn: 2 năm
Khối ngành: Thiết kế
Chuyên viên <br>Digital Marketing (Full-stack)

Chuyên viên
Digital Marketing (Full-stack)

5 (7656)
Hình thức học: Tập trung
Thời hạn: 2 năm
Khối ngành: Digital Marketing
Tin tức khác
How to do #3:

How to do #3: "Những kĩ năng cần có của lập trình viên Android"

Ngày đăng 05/11/2018
How To Do là chuỗi sự kiện công nghệ được tổ chức tại VTC Academy thường niên mỗi tháng dành cho các bạn đang học và làm việc về hai khối ngành Lập trình và Thiết kế. Chương trình sẽ giúp các bạn giải quyết các vấn đề từ basic đến advance thông qua các diễn giả – những người đang làm nghề chuyên nghiệp từ các doanh nghiệp, studio,…
Bộ sưu tập 10 Front-End Framework chất lừ

Bộ sưu tập 10 Front-End Framework chất lừ

Ngày đăng 02/11/2018
Các front-end framework giúp bạn phát triển các trang web dễ dàng hơn. Vì vậy chúng rất phổ biên và có rất nhiều front-end framework có sẵn để bạn lựa chọn, cũng như những framework mới thường xuyên xuất hiện. Vì có nhiều sự lựa chọn, nên việc chọn một front-end framework phù hợp có thể trở nên khó khăn. Giống như nhiều lập trình viên khác, bạn có thể chọn một framework phổ biến như Bootstrap, Foundation. Nhưng một framework ít phổ biến hơn có thể phù hợp và hiệu quả hơn với nhu cầu của bạn, vì thế việc tìm hiểu những framework phổ biến nhất hiện nay cũng rất đáng giá.
Chàng trai 18 tuổi đam mê Game từ bé, chinh phục thành công Học Bổng V-Talents ngành Lập Trình Game

Chàng trai 18 tuổi đam mê Game từ bé, chinh phục thành công Học Bổng V-Talents ngành Lập Trình Game

Ngày đăng 04/11/2024
Tuấn Khoa, chàng trai 2006, luôn ấp ủ niềm đam mê mãnh liệt với lập trình và thế giới sáng tạo đầy cảm hứng của game. Sau những nỗ lực không ngừng tìm kiếm con đường phù hợp để dung hòa cả năng lực và đam mê, Khoa đã chinh phục thành công học bổng V-Talents, chính thức trở thành học viên ngành Lập trình Game tại học viện đào tạo hàng đầu trong lĩnh vực. Đây chắc hẳn là bước ngoặt cực kỳ đáng nhớ, đưa Khoa đến gần hơn với mơ ước tạo ra những tựa game độc đáo và mang đến niềm vui cho mọi người.

Liên hệ với VTC Academy

    Tôi đã đọc và đồng ý với Điều khoảnChính sách bảo mật của VTC Academy.

  • Hà Nội: 0981 114 757
  • Đà Nẵng: 0865 098 399
  • Hồ Chí Minh: 0818 799 299