Tới nội dung chính
Danh mục
Hệ quản trị SQL

SQL là gì? Bạn cần biết gì về ngôn ngữ lập trình SQL

Bạn đã từng nghe đến hệ ngôn ngữ SQL nhưng chưa biết SQL là gì? Bạn đang tìm hiểu về cách sử dụng ngôn ngữ lập trình SQL? Hãy cùng chúng tôi tìm hiểu chi tiết về ngôn ngữ SQL thông qua bài viết sau đây nhé!

1. Ngôn ngữ SQL là gì?

SQL là gì có thể không còn xa lạ đối với một số người, tuy nhiên không phải ai cũng biết rõ về nó. SQL (Structured Query Language) là loại ngôn ngữ truy vấn có cấu trúc, là một loại ngôn ngữ máy tính đặc thù, hỗ trợ lưu trữ các thao tác lưu trữ và truy xuất dữ liệu trong cùng một cơ sở dữ liệu quan hệ.

Ngôn ngữ SQL được ANSI (American National Standards Institute) – Viện tiêu chuẩn quốc gia Hoa Kỳ tiêu chuẩn hóa trở thành ngôn ngữ được sử dụng một cách phổ biến trong các hệ thống quan hệ và hỗ trợ sử dụng trong các công ty công nghệ quy mô lớn.

SQL là gì? Một câu hỏi thường gặp đối với ai mới bắt đầu tìm hiểu cơ sở dữ liệu.

Ngôn ngữ SQL đóng vai trò là ngôn ngữ cơ sở dữ liệu chuẩn cho các hệ thống quản lý dữ liệu quan hệ RDBMS như Oracle, MS Access, MySQL, Informix, SQL Sever,…

2. Lịch sử hình thành ngôn ngữ SQL

Nhắc đến lịch sử của ngôn ngữ SQL là nhắc đến cả một quá trình hình thành, phát triển qua nhiều giai đoạn với sự đột phá, hoàn thiện bộ ngôn ngữ cho đến ngày nay.

– Năm 1970 là mốc lịch sử đầu tiên trong quá trình hình thành ngôn ngữ SQL. Cha đẻ của Relational Database (Cơ sở dữ liệu quan hệ) là Dr.Edgar F.Ted Codd của IBM. Người cha đẻ đã thực hiện miêu tả một mô hình quan hệ cho các Database.

– Năm 1974, từ mô hình được miêu tả, lần đầu tiên thuật ngữ SQL (Structured Query Language) xuất hiện và được nhiều người biết đến.

– Đến 1978, IBM đã công bố sản phẩm System/R dựa trên việc tiếp tục phát triển và hoàn thiện ý tưởng của F.Ted Codd.

– Năm 1986 là năm hoàn thiện về ngôn ngữ và cơ sở dữ liệu quan hệ. Trong năm này IBM đã hoàn thiện nguyên mẫu đầu tiên về Relational Database và được ANSI chuẩn hóa. Relational Database đầu tiên được công bố với tên Relational Software và Oracle vào thời gian sau đó.

3. Tại sao cần phải sử dụng SQL

Ngôn ngữ SQL được sử dụng một cách phổ biến, rộng rãi trên khắp thế giới do sự thuận lợi, lợi ích mà nó mang lại cho người dùng. SQL không chỉ là một ngôn ngữ máy tính phổ biến mà còn là ngôn ngữ máy tính hữu dụng. Con người sử dụng SQL thông qua các lệnh để thực hiện các chức năng, công dụng của chúng.

Ngôn ngữ SQL luôn cần thiết cho nhiều trường hợp khác nhau.

SQL hỗ trợ việc thực hiện các công việc liên quan đến các dữ liệu phức tạp, số lượng lớn và cho người dùng một cái nhìn toàn diện hơn. Bên cạnh đó học sql, sử dụng sql còn giúp người dùng tiết kiệm thời gian và chi phí.

4. Chức năng, công dụng của SQL

Với việc sử dụng SQL, người dùng có thể truy vấn các cơ sở dữ liệu theo nhiều cách khác nhau thông qua sử dụng các lệnh. SQL cho phép người dùng miêu tả, truy cập dữ liệu từ RDBMS; định nghĩa dữ liệu trong 1 Database và khi cần thiết có thể thao tác với Database đó; tạo, xóa bảng và Database; tạo view, procedure, hàm trong cùng 1 Database; thiết lập quyền truy cập, thủ tục truy cập bảng và view.

5. Một số ưu điểm của SQL

Chính vì những ưu điểm của ngôn ngữ SQL mang lại cho người dùng dẫn đến sự sử dụng phổ biến như hiện nay. Một số ưu điểm nổi bật của SQL có thể kể đến:

– Truy cập dữ liệu ở khắp mọi nơi. Với SQL, dữ liệu xuất hiện bất cứ đâu dù trên màn hình máy tính hay trên cả thiết bị di động smartphone của bạn.

– Đơn giản hóa công việc lập trình. SQL giúp bạn lưu trữ dữ liệu của nhiều ứng dụng khác nhau trên cùng một cơ sở dữ liệu, cách thức truy cập đơn giản và nhanh chóng.

– Chèn, bổ sung, sửa, xóa và đọc dữ liệu dễ dàng. Thao tác, câu lệnh trên SQL đơn giản hơn so với ngôn ngữ khác nên quá trình này người dùng không mất quá nhiều thời gian.

– Quá trình hình thành phát triển hơn 40 năm. Bề dày lịch sử chính là minh chứng về những lợi ích tuyệt vời, không thể thiếu của SQL với người dùng.

Những ưu điểm vượt trội mà SQL mang đến là lý do mà chúng ta luôn lựa chọn học SQL.

6. Nhược điểm của ngôn ngữ SQL

Bên cạnh những ưu điểm, thì SQL cũng tồn tại một số nhược điểm nhất định. Vậy, nhược điểm của SQL là gì?

Giao diện phức tạp. Đây là yếu tố gây khó khăn cho người dùng. Đặc biệt là người mới bắt đầu rất khó để truy cập.

Hạn chế quyền kiểm soát. Người lập trình nên cơ sở dữ liệu trong SQL không được toàn quyền kiểm soát chúng. Hầu hết các chương trình cơ sở dữ liệu SQL đều có phần mở rộng độc quyền riêng.

Giá cả. Giá của phiên bản SQL khá cao khiến một số lập trình viên gặp khó khăn khi sở hữu và cập nhật nó.

7. Các câu lệnh trong ngôn ngữ SQL

Là ngôn ngữ máy tính, SQL được sử dụng thông qua các ngôn ngữ với các lệnh chức năng khác nhau.

7.1. Ngôn ngữ DDL (Data Definition Language)

DDL gồm các lệnh sau:

– CREATE: Tạo 1 bảng mới, 1 view mới của bảng hoặc các đối tượng khác trong Database.

– ALTER: Sửa đổi đối tượng đã tồn tại trong Database, ví dụ 1 view trong 1 bảng.

– DROP: Xóa bảng, view của bản hoặc đối tượng khác trong Database.

7.2. Ngôn ngữ thao tác dữ liệu DML (Data Manipulation Language)

DML gồm lệnh:

– SELECT: Lấy một hoặc một số bản ghi nhất định từ 1 hoặc nhiều bảng.

INSERT: Tạo một bản ghi

– UPDATE: Chỉnh sửa bản ghi

– DELETE: Xóa bản ghi

7.3. Ngôn ngữ điều khiển dữ liệu DCL (Data Control Language)

DCL gồm lệnh:

– GRANT: Trao quyền cho người dùng

– REVOKE: Thu hồi quyền đã trao cho người dùng

8. Các cú pháp truy vấn trong ngôn ngữ SQL

Khi truy vấn, thao tác với các tài liệu sql (tai lieu sql) bạn cần biết cú pháp cụ thể để truy vấn, sử dụng ngôn ngữ SQL chuẩn, tránh mất dữ liệu.

Câu lệnh, cú pháp thường gặp trong SQL.

8.1. Truy vấn Update

Truy vấn Update để sửa đổi các bản ghi đang tồn tại trên cùng 1 bảng. Nếu sửa đổi một số hàng, bạn sử dụng mệnh đề WHERE để không bị tác động toàn bộ các hàng theo mặc định. Cú pháp:

UPDATE: ten_bang

SET cot1 = giaitri1, cot2 = giaitri2, cotN = giaitriN

WHERE [dieu_kien]

8.2. Truy vấn Inseart

Cú pháp:

Xác định cột để chèn dữ liệu:

INSERT INTO TABLE_TEN (cot1, cot2, cot3, …. CotN)

VALUES (giaitri1, giaitri2, giaitri3, …giatriN)

Thao tác trên tất cả các cột trong bảng:

INSERT INTO TABLE_TEN VALUES (giaitri1,giaitri2,giaitri3,…giaitriN)

8.3. Truy vấn Select

Xác định cột có giá trị muốn lấy: SELECT cot1, cot2, cotN FROM ten_bang;

Thao tác trên tất cả các cột: SELECT * FROM ten_bang;

8.4. Mệnh đề Order By

Cú pháp:

SELECT danh_sach_cot

FROM ten_bang

[WHERE dieu_kien]

[ORDER BY cot1, cot2, …cotN] [ASC | DESC];

8.5. Mệnh đề Group By

Cú pháp:

SELECT cot1, cot2

FROM ten_bang

WHERE [dieu_kien]

GROUP BY cot1, cot2

ORDER BY cot1, cot2

8.6. Mệnh đề Distinct

Cú pháp:

SELECT DISTINCT cot1, cot2, …cotN

FROM ten_bang

WHERE [dieu_kien]

8.7. Cú pháp mệnh đề Where

WHERE được sử dụng để xác định một điều kiện khi thực hiện lấy một số dữ liệu trong 1 bảng hoặc kết hợp nhiều bảng. Mệnh đề này sẽ lọc các bản ghi và lấy những bản ghi đã chọn.

Cú pháp:

SELECT cot1, cot2, cotN

FROM ten_bang

WHERE [dieu_kien]

8.8. Thuật toán mệnh đề AND & OR

Kết hợp nhiều điều kiện, thu hẹp phạm vi dữ liệu trong cùng 1 lệnh SQL (chứa nhiều mệnh đề WHERE) là chức năng của AND & OR.

Cú pháp:

SELECT cot1, cot2, cotN

FROM ten_bang

WHERE [dieu_kien_1] AND [dieu_kien_2]…AND [dieu_kien_N];

Trên đây là chia sẻ của chúng tôi về ngôn ngữ lập trình SQL, bạn đã có thể học SQL cơ bản thông qua các lệnh, cú pháp ở trên. Hy vọng qua những thông tin mà chúng tôi cung cấp, bạn đã biết được SQL là gì và thực hiện truy vấn SQL ra sao để áp dụng cho môn học cũng như trong thực tiễn.

Thảo Larskanis

@Thảo Larskanis

Lĩnh vực công nghệ thông tin, đặc biệt là cấu trúc dữ liệu ngày càng quan trọng và trở nên cần thiết hơn với nhiều doanh nghiệp. Nhận thấy rõ được tầm quan trọng của SQL, Thảo Nguyễn - người đã có nhiều năm học tập và làm việc trong lĩnh vực công nghệ thông tin đã quyết định thành lập một website chia sẻ kiến thức cũng như kinh nghiệm của bản thân về lĩnh vực SQL đến cho những bạn có đam mê và muốn hiểu rõ hơn về lĩnh vực này.