SQL là gì?
SQL là viết tắt của Structured Query Language là ngôn ngữ truy vấn dữ liệu mang tính cấu trúc. SQL là loại ngôn ngữ máy tính phổ biến để tạo, sửa và lấy dữ liệu từ một hệ quản trị cơ sở dữ liệu quan hệ như: MySQL, Oracle, Database, MySQL Server.
Định nghĩa SQL là gì?
Bất kỳ công ty lớn nào cũng đều sử dụng xây dựng cho mình một hệ thống để lữu trữ dữ liệu. Mọi thứ trong cơ sở dữ liệu này sẽ diễn ra thành nhiều bảng và có mối quan hệ với nhau. Để truy vấn và lấy dữ liệu từ bảng này nhằm tổng hợp thành thông tin khi người dùng sử dụng SQL qua câu query.
SQL là gì?
Học SQL để làm gì?
Bây giờ các bạn đã hiểu SQL là gì, SQL viết tắt của từ gì. Tiếp theo, chúng ta hãy thử xem ngôn ngữ SQL có thể làm được những gì. Ngôn ngữ lập trình này có nhiều mục đích sử dụng cho các nhà phân tích dữ liệu và các chuyên gia khoa học dữ liệu. Nó đặc biệt hữu ích vì nó có thể:
-
Thực thi các truy vấn dựa trên cơ sở dữ liệu.
-
Lấy dữ liệu từ cơ sở dữ liệu.
-
Chèn bản ghi vào cơ sở dữ liệu.
-
Cập nhật bản ghi trong cơ sở dữ liệu.
-
Xóa bản ghi khỏi cơ sở dữ liệu.
-
Tạo cơ sở dữ liệu mới hoặc bảng mới trong cơ sở dữ liệu.
-
Tạo các thủ tục và chế độ xem được lưu trữ trong cơ sở dữ liệu.
-
Đặt quyền trên bảng (table), thủ tục (procedure) và dạng xem (view).
Hãy tưởng tượng cuộc sống sẽ khó khăn như thế nào nếu chúng ta không có cách kiểm soát cơ sở dữ liệu ở định dạng này. Sau khi hiểu SQL được sử dụng để làm gì, chúng ta hãy xem qua lịch sự hình thành của ngôn ngữ này nhé!
Lịch sử phát triển SQL
Dưới đây là những dấu mốc quan trọng trong lịch sử của ngôn ngữ SQL:
-
1970 – Tiến sĩ Edgar F. “Ted” Codd của IBM mô tả một mô hình quan hệ cho cơ sở dữ liệu, đặt cơ sở cho các RDBMS.
-
1974 – Các nhà nghiên cứu của IBM xuất bản một bài báo giới thiệu Ngôn ngữ truy vấn có cấu trúc (Structured Query Language).
-
1977 – Công ty Relational Software Inc. trở thành Oracle, bắt đầu xây dựng một RDBMS thương mại.
-
1979 – Oracle xuất xưởng RDBMS thương mại đầu tiên cho các hệ thống máy tính mini của Digital Equipment Corp.
-
1982 – IBM xuất xưởng SQL / Data System, một SQL RDBMS cho các máy tính lớn của IBM.
-
1985 – IBM xuất xưởng cơ sở dữ liệu 2, SQL RDBMS cho hệ điều hành máy tính lớn nhiều lưu trữ ảo của IBM.
-
1986 – Một ủy ban ANSI và ISO chấp nhận SQL làm tiêu chuẩn.
-
1989 – Bản sửa đổi đầu tiên của tiêu chuẩn ISO SQL, SQL-89 được xuất bản.
-
1992 – Bản sửa đổi lớn đầu tiên của tiêu chuẩn SQL ISQ, SQL-92 được xuất bản.
-
1999 – Phiên bản đầu tiên được đặt tên theo tiêu chuẩn đặt tên của ISO, ISO / IEC SQL: 1999, bổ sung thêm chức năng lập trình và hỗ trợ cho Java.
-
2003 – ISO / IEC SQL: 2003 bổ sung hỗ trợ kiểu dữ liệu xác định trước cho các đối tượng ngôn ngữ đánh dấu có thể mở rộng (XML).
-
2006 – ISO / IEC SQL: 2006 mở rộng chức năng liên quan đến XML.
-
2008 – ISO / IEC SQL: 2008 bổ sung hỗ trợ cho các JOIN được phân vùng, một phương pháp để liên kết hai hoặc nhiều bảng coi các bảng đã nối là một bảng duy nhất.
-
2011 – ISO / IEC SQL: 2011 cải thiện hỗ trợ cho cơ sở dữ liệu quan hệ chứa dữ liệu liên quan đến thời gian.
-
2016. ISO / IEC SQL: 2016 bổ sung các tính năng mới tùy chọn, bao gồm các thay đổi liên quan đến ký hiệu đối tượng JavaScript, hỗ trợ các hàm bảng đa hình và đối sánh mẫu hàng.
Ưu điểm của SQL là gì?
SQL có nhiều ưu điểm khiến nó trở nên phổ biến và được yêu cầu cao. Nó là một ngôn ngữ đáng tin cậy và hiệu quả được sử dụng để giao tiếp với cơ sở dữ liệu. Một số ưu điểm của lập trình SQL như sau:
Ưu điểm của SQL là gì?
-
Xử lý truy vấn nhanh hơn: Một lượng lớn dữ liệu được truy xuất một cách nhanh chóng và hiệu quả. Các thao tác như chèn, xóa, thao tác dữ liệu cũng được thực hiện gần như không tốn thời gian.
-
Không có kỹ năng mã hóa: Để truy xuất dữ liệu, không cần số lượng lớn dòng mã. Tất cả các từ khóa cơ bản như SELECT, INSERT INTO, UPDATE,…. đều được sử dụng và các quy tắc cú pháp trong SQL cũng không phức tạp, điều này làm cho nó trở thành một ngôn ngữ thân thiện với người dùng.
-
Ngôn ngữ chuẩn hóa: Do lịch sự thành lập lâu đời trong nhiều năm và có hệ thống tài liệu hướng dẫn đầy đủ, SQL cung cấp một nền tảng thống nhất trên toàn thế giới cho tất cả người dùng.
-
Portable: Được sử dụng trong PC, máy chủ, máy tính xách tay độc lập có bất kỳ hệ điều hành nào như Windows, Linux, Mac,…. Nó cũng có thể được nhúng với các ứng dụng khác.
-
Ngôn ngữ tương tác: Dễ học và dễ hiểu, có thể nhận được câu trả lời cho các truy vấn phức tạp trong vài giây.
Nhược điểm của SQL là gì?
Mặc dù SQL có nhiều ưu điểm nhưng vẫn tồn tại một vài nhược điểm. Các nhược điểm khác nhau của SQL như sau:
-
Giao diện phức tạp: SQL có một giao diện phức tạp, khiến một số người dùng cảm thấy khó khăn trong khi xử lý cơ sở dữ liệu.
-
Chi phí: Một số phiên bản đắt tiền, khiến các lập trình viên không thể truy cập nó.
-
Chỉ được kiểm soát một phần: Do các quy tắc nghiệp vụ ẩn, cơ sở dữ liệu không được kiểm soát hoàn toàn.
Lý do nên sử dụng SQL là gì?
SQL là một ngôn ngữ máy tính phổ biến thường được sử dụng với các mục đích như:
-
Tạo bảng cơ sở dữ liệu, view mới.
-
Để chèn bản ghi trong một cơ sở dữ liệu.
-
Để xóa các bản ghi từ một cơ sở dữ liệu.
-
Lấy dữ liệu từ cơ sở dữ liệu.
Hiện nay, thì người dùng thường sử dụng MySQL để làm cơ sở dữ liệu trên Hosting. Nhưng việc hiểu và biết về SQL thì sẽ giúp bạn thao tác dữ liệu tốt hơn mà không cần nhờ đến sự hỗ trợ của các nhà cung cấp dịch vụ Web Hosting.
Các câu lệnh SQL là gì?
SQL sử dụng các lệnh nhất định như Create, Drop, Insert,… để thực hiện các tác vụ cần thiết. Các lệnh SQL này chủ yếu được phân loại thành bốn loại như sau:
-
DDL – Ngôn ngữ định nghĩa dữ liệu.
-
DQl – Ngôn ngữ truy vấn dữ liệu.
-
DML – Ngôn ngữ thao tác dữ liệu.
-
DCL – Ngôn ngữ điều khiển dữ liệu.
Câu lệnh SQL là gì?
DDL (Ngôn ngữ Định nghĩa Dữ liệu)
DDL (Data Definition Language) bao gồm các lệnh SQL có thể được sử dụng để xác định lược đồ cơ sở dữ liệu. Danh sách các lệnh DDL:
-
CREATE: Lệnh này được sử dụng để tạo cơ sở dữ liệu hoặc các đối tượng của nó (như bảng, chỉ mục, hàm, dạng xem, thủ tục lưu trữ và trình kích hoạt).
-
DROP: Lệnh này dùng để xóa các đối tượng khỏi cơ sở dữ liệu.
-
ALTER: Sử dụng để thay đổi cấu trúc của cơ sở dữ liệu.
-
TRUNCATE: Sử dụng để xóa tất cả các bản ghi khỏi một bảng, bao gồm tất cả các khoảng trống được cấp cho các bản ghi sẽ bị xóa.
-
COMMENT: Sử dụng để thêm nhận xét vào từ điển dữ liệu.
-
RENAME: Sử dụng để đổi tên một đối tượng hiện có trong cơ sở dữ liệu.
DQL (Ngôn ngữ truy vấn dữ liệu)
Các câu lệnh DQL (Data Query Language) được sử dụng để thực hiện các truy vấn về dữ liệu trong các đối tượng lược đồ. Mục đích của lệnh DQL là lấy một số quan hệ lược đồ dựa trên truy vấn được chuyển đến nó. Danh sách DQL:
-
SELECT : Nó được sử dụng để lấy dữ liệu từ cơ sở dữ liệu.
-
DML (Ngôn ngữ thao tác dữ liệu)
-
DML (Data Manipulation Language) là ngôn ngữ thao tác dữ liệu. Danh sách các lệnh DML bao gồm:
-
INSERT: Nó được sử dụng để chèn dữ liệu vào bảng.
-
UPDATE: Nó được sử dụng để cập nhật dữ liệu hiện có trong bảng.
-
DELETE: Nó được sử dụng để xóa các bản ghi khỏi một bảng cơ sở dữ liệu.
-
LOCK: Đồng thời điều khiển bảng.
-
CALL: Gọi một chương trình con PL/SQL hoặc JAVA.
-
EXPLAIN PLAN: Nó mô tả đường dẫn truy cập đến dữ liệu.
-
DCL (Ngôn ngữ điều khiển dữ liệu):
-
DCL (Data Control Language) là ngôn ngữ điều khiển dữ liệu, bao gồm các lệnh như GRANT và REVOKE chủ yếu giải quyết các quyền, quyền hạn và các điều khiển khác của hệ thống cơ sở dữ liệu.
Danh sách các lệnh DCL:
-
GRANT: Lệnh này cung cấp cho người dùng đặc quyền truy cập vào cơ sở dữ liệu.
-
REVOKE: Lệnh này thu hồi các đặc quyền truy cập của người dùng được cấp bằng cách sử dụng lệnh GRANT.
-
Một số lệnh cơ bản khác của SQL là gì?
-
INSERT INTO – chèn dữ liệu mới vào cơ sở dữ liệu.
-
CREATE DATABASE – tạo cơ sở dữ liệu mới.
-
ALTER DATABASE – sửa đổi cơ sở dữ liệu.
-
CREATE TABLE – tạo một bảng mới.
-
ALTER TABLE – sửa đổi bảng.
-
DROP TABLE – xóa bảng.
-
CREATE INDEX – tạo một chỉ mục (khóa tìm kiếm).
-
DROP INDEX – xóa một chỉ mục.