12/08/2018, 14:55

SQL căn bản dành cho QA - Giới thiệu

SQL là gì? SQL nghĩa là ngôn ngữ truy vấn cấu trúc (Structured Query Language). Trong phần này, bạn sẽ học về: - Dữ liệu là gì? - Cơ sở dữ liệu là gì? - Hệ quản trị cơ sở dữ liệu là gì? - Các kiểu hệ quản trị cơ sở dữ liệu - SQL là gì? - NoSQL là gì? - Tại sao phải tìm hiểu SQL trước NoSQL ...

SQL là gì? SQL nghĩa là ngôn ngữ truy vấn cấu trúc (Structured Query Language).

Trong phần này, bạn sẽ học về:

- Dữ liệu là gì?
- Cơ sở dữ liệu là gì?
- Hệ quản trị cơ sở dữ liệu là gì?
- Các kiểu hệ quản trị cơ sở dữ liệu
- SQL là gì?
- NoSQL là gì?
- Tại sao phải tìm hiểu SQL trước NoSQL

Trước tiên chúng ta tìm hiểu về cơ sở dữ liệu, hãy hiểu nó

1. Dữ liệu là gì?

  • Nói một cách đơn giản, dữ liệu là các quan hệ liên quan đến bất kỳ sự vật nào được xem xét.
  • Ví dụ: Tên của bạn, tuổi, chiều cao, cân nặng,… là các dữ liệu liên quan đến bạn. Một bức ảnh, tập tin, pdf,… cũng có thể coi là dữ liệu.

2. Cơ sở dữ liệu là gì?

  • Định nghĩa cơ sở dữ liệu, một cơ sở dữ liệu là tập các dữ liệu liên hệ với nhau. Cơ sở dữ liệu hỗ trợ lưu trữ và thao tác dữ liệu. Cơ sở dữ liệu giúp quản lý dữ liệu trở nên dễ dàng. Hãy thảo luận vài ví dụ.
    • Một sổ danh bạ điện thoại trực tuyến chắc chắn sẽ sử dụng cơ sở dữ liệu để lưu trữ dữ liệu liên quan đến con người, số điện thoại, các chi tiết liên lạc khác,…
    • Nhà cung cấp dịch vụ điện của bạn rõ ràng đang sử dụng một cơ sở dữ liệu để quản lý thanh toán, các vấn đề liên quan đến khách hàng, để xử lý lỗi,..
    • Hãy cùng xem xét facebook. Nó cần lưu trữ, thao tác và trình bày dữ liệu liên quan đến thành viên, bạn bè, hoạt động của thành viên, thông điệp, quảng cáo,…
  • Hãy xem đoạn video này để hiểu hơn https://youtu.be/FR4QIeZaPeM

3. Hệ quản trị cơ sở dữ liệu là gì (DBMS)?

  • Hệ quản trị cơ sở dữ liệu (DBMS) là một tập hợp các chương trình cho phép người dùng truy cập vào cơ sở dữ liệu, thao tác dữ liệu, thống kê và hiển thị dữ liệu.
  • Nó cũng giúp quản lý truy cập vào cơ sở dữ liệu.
  • Hệ quản trị cơ sở dữ liệu không phải là một khái niệm mới, nó xuất hiện lần đầu tiên vào những năm 1960.
  • Cùng với sự phát triển của công nghệ, cơ sở dữ liệu phát triển rất nhiều trong khi sử dụng và các chức năng ​​của cơ sở dữ liệu đã được tăng lên rất nhiều.
  • Các kiểu hệ quản trị cơ sở dữ liệu
  • Hãy xem DBMS phát triển như thế nào với thời gian. Sơ đồ sau cho thấy sự tiến triển của các loại DBMS. Có 4 loại DBMS chính.
  • Hierarchical - kiểu DBMS này sử dụng mối quan hệ "parent-child". Loại DBMS này hiếm khi được sử dụng hiện nay. Cấu trúc của nó giống như một cây có các nút đại diện cho các bản ghi và các nhánh biểu diễn các trường. Các cửa sổ đăng ký được sử dụng trong Windows XP là một ví dụ của một cơ sở dữ liệu có thứ bậc. Cài đặt cấu hình được lưu trữ dưới dạng các cấu trúc cây với các nút.
  • Network DBMS - loại DBMS này hỗ trợ rất nhiều quan hệ. Điều này thường dẫn đến các cấu trúc cơ sở dữ liệu phức tạp. RDM Server là một ví dụ về một hệ thống quản lý cơ sở dữ liệu thực hiện mô hình mạng.
  • Relational DBMS - loại DBMS này định nghĩa các mối quan hệ cơ sở dữ liệu dưới dạng các bảng, còn được gọi là quan hệ. Không giống như DBMS mạng, RDBMS không hỗ trợ nhiều đến nhiều mối quan hệ. DBMS thương mại thường có các kiểu dữ liệu được xác định trước mà họ có thể hỗ trợ. - Đây là loại DBMS phổ biến nhất trên thị trường. Ví dụ về các hệ thống quản lý cơ sở dữ liệu liên quan bao gồm cơ sở dữ liệu MySQL, Oracle và Microsoft SQL Server.
  • Object Oriented Relation DBMS - kiểu này hỗ trợ lưu trữ các kiểu dữ liệu mới. Dữ liệu được lưu trữ dưới dạng đối tượng. Các đối tượng được lưu trữ trong cơ sở dữ liệu có các thuộc tính (ví dụ: giới tính, tuổi) và các phương pháp xác định những gì cần làm với dữ liệu. PostgreSQL là một ví dụ về một DBMS quan hệ đối tượng.

4. SQL là gì?

  • Định nghĩa SQL: Structured Query language (SQL) là ngôn ngữ chuẩn dùng cho cơ sở dữ liệu quan hệ.
  • Lập trình SQL được sử dụng để chèn, tìm kiếm, cập nhật, xóa các bản ghi cơ sở dữ liệu. Điều đó không có nghĩa là SQL không thể làm được điều đó. Trong thực tế nó có thể làm rất nhiều thứ, những không giới hạn, tối ưu hóa và bảo trì cơ sở dữ liệu.
  • Cơ sở dữ liệu quan hệ như Cơ sở dữ liệu MySQL, Oracle, SQL Server Ms, Sybase,... sử dụng SQL! Làm thế nào để sử dụng cú pháp sql?
  • Cú pháp SQL được sử dụng trong các cơ sở dữ liệu gần như tương tự, ngoại trừ thực tế là một số sử dụng các cú pháp khác nhau và thậm chí các cú pháp SQL độc quyền.
Ví dụ SQL:
SELECT * FROM Members WHERE Age > 30 

5. NoSQL là gì?

  • NoSQL là một loại Hệ quản trị cơ sở dữ liệu mới. Đặc điểm chính của nó là nó không tuân thủ các khái niệm cơ sở dữ liệu quan hệ. NOSQL có nghĩa là "Không chỉ SQL".
  • Khái niệm cơ sở dữ liệu NoSQL đã phát triển với những người khổng lồ trên Internet như Google, Facebook, Amazon ... để xử lý khối lượng dữ liệu khổng lồ.
  • Khi bạn sử dụng cơ sở dữ liệu quan hệ cho khối lượng dữ liệu lớn, hệ thống sẽ chậm lại.
  • Để khắc phục điều này, chúng ta có thể "mở rộng" hệ thống bằng cách nâng cấp phần cứng.
  • Thay thế cho vấn đề trên sẽ chia tải cho cơ sở dữ liệu trên nhiều máy chủ.
  • Cơ sở dữ liệu NOSQL là các cơ sở dữ liệu không quan hệ tốt hơn các cơ sở dữ liệu quan hệ và được thiết kế với các ứng dụng web.
  • Chúng không sử dụng SQL để truy vấn dữ liệu và không tuân theo các lược đồ nghiêm ngặt như các mô hình quan hệ. Những tính năng của SQL, Atomicity, Consistency, Isolation, Durable mà NoSQL không được đảm bảo.

6. Tại sao lại tìm hiểu SQL trước NoSQL?

  • Với những lợi thế của cơ sở dữ liệu NOSQL nêu trên tốt hơn so với các mô hình quan hệ, bạn có thể nghĩ rằng tại sao người ta vẫn muốn tìm hiểu về cơ sở dữ liệu SQL?
  • Vâng, NOSQL cơ sở dữ liệu là loại hệ thống chuyên môn cao và có cách sử dụng đặc biệt và hạn chế của nó. NOSQL phù hợp hơn cho những ai xử lý khối lượng dữ liệu khổng lồ. Phần lớn, sử dụng cơ sở dữ liệu quan hệ và các công cụ liên quan.
  • Các cơ sở dữ liệu quan hệ có những ưu điểm sau đây so với cơ sở dữ liệu NOSQL;
  • SQL (quan hệ) cơ sở dữ liệu có một mô hình quản lý và lưu trữ dữ liệu trưởng thành. Điều này rất quan trọng đối với người dùng doanh nghiệp.
  • Cơ sở dữ liệu SQL hỗ trợ khái niệm quan điểm cho phép người dùng chỉ xem dữ liệu mà họ được phép xem. Dữ liệu mà họ không được phép xem được giữ ẩn khỏi chúng.
  • Cơ sở dữ liệu SQL hỗ trợ thủ tục lưu trữ sql cho phép các nhà phát triển cơ sở dữ liệu thực hiện một phần của logic nghiệp vụ vào cơ sở dữ liệu.
  • Cơ sở dữ liệu SQL có mô hình bảo mật tốt hơn so với cơ sở dữ liệu NoSQL.

7. Tổng kết

  • DBMS là viết tắt của Database Management System.
  • Chúng tôi có bốn loại chính của DBMS là Hierarchical, Network, Relational, Object Oriented
  • DBMS được sử dụng rộng rãi nhất là mô hình quan hệ định dạng bảng. Nó sử dụng SQL làm ngôn ngữ truy vấn chuẩn
  • Ngôn ngữ SQL được sử dụng để truy vấn một cơ sở dữ liệu
  • Cách tiếp cận cơ sở dữ liệu có nhiều ưu điểm khi lưu trữ dữ liệu so với các hệ thống tập tin truyền thống phẳng
0