Rất nhiều website động nhờ cơ sở dữ liệu. Quản lý DB cần hệ thống cấu trúc — SQL là một trong những hệ thống đó.
SQL = Structured Query Language. Ngôn ngữ truy cập/quản lý dữ liệu trong Relational Database Management Systems (RDBMS) do Microsoft phát triển. 1986: chuẩn ANSI. 1987: chuẩn ISO.
Trong SQL Server: lưu, tổ chức, truy xuất dữ liệu bằng SQL statement. SQL có extension hỗ trợ các chức năng khác nhau.
SQL, T-SQL, MSSQL, PL/SQL Là Gì?
SQL: ngôn ngữ truy vấn/chỉnh sửa dữ liệu trên server database cụ thể. Còn gọi là ANSI SQL (chuẩn 1986). Một trong những ngôn ngữ lập trình tốt nhất hiện nay. Nhưng nhiều DB dùng biến thể SQL để phục vụ nhu cầu đặc thù.
Trước khi vào extension, hiểu rõ Database là gì:
Database = tập hợp dữ liệu có cấu trúc, tổ chức để dễ sử dụng/truy xuất. Có thể là nội dung blog, info user đăng ký... Đều lưu trong DB.
SQL giúp DB tổ chức, định vị dữ liệu. Nhưng không phải DB nào cũng dùng SQL chuẩn. SQL Server của Microsoft dùng T-SQL.
T-SQL Là Gì?
Extension độc quyền của Microsoft, biến thể SQL chạy chỉ trên Microsoft SQL Server hoặc Azure Synapse. T-SQL = Transact-Structured Query Language. Cú pháp, tính năng riêng.
Vẫn tuân thủ chuẩn ANSI SQL → biết SQL cơ bản thì dễ học T-SQL. Khác biệt: xử lý exception/error, quy tắc vận hành, procedure-based, hàm string/data, một số nâng cấp nhỏ.
Lý do chọn T-SQL: ứng dụng cài đặt Microsoft SQL Server.
MSSQL Là Gì?
Viết tắt của Microsoft SQL Servers. Suite phần mềm DB do Microsoft thiết kế, cạnh tranh Oracle Database và MySQL. Dùng rộng rãi trong enterprise deployment (hệ thống quy mô lớn, mission-critical). MSSQL dùng cú pháp SQL, cụ thể là T-SQL.
Chức năng: lưu/trữ, tổ chức, xử lý data; biến data thô thành insight; xử lý big data; chạy analytics/report phức tạp...
PL/SQL Là Gì?
Oracle Database dùng biến thể riêng: PL/SQL = Procedural Language Structured Query Language. Kết hợp procedural language (điều kiện, vòng lặp) trong môi trường SQL.
Cho phép khai báo hằng/số biến, procedure, function, type, trigger. PL/SQL procedure làm được nhiều hơn business rule cơ bản: truy cập web, gửi email... — SQL cơ bản không làm được.
Ra mắt 1995, tuân thủ ISO SQL. Portable, high-performance, built-in interpreter, OS-independent. Dùng cho Oracle DB, TimesTen in-memory DB, IBM DB2.
MySQL Là Gì?
Open-source SQL RDBMS do Oracle phát triển/hỗ trợ. Khác với Oracle Database (dùng PL/SQL), MySQL dùng biến thể SQL tên là MySQL. Trước không thuộc Oracle, sau khi được mua vẫn giữ open-source.
DB phổ biến nhất cho WordPress: lưu bài viết, user, plugin... Dùng mô hình client-server: server chứa data, client request qua SQL.
Phù hợp cho WordPress hoặc site volume data/user lớn.
Nên Dùng SQL Nào?
T-SQL và PL/SQL phục vụ mục đích, DB hoàn toàn khác. Câu trả lời nằm ở DB bạn chọn.
T-SQL vs ANSI SQL: cũng tuỳ user. Nhưng nếu dùng Microsoft SQL Server → T-SQL tốt hơn (tương thích tối đa). Multiple backend → ANSI SQL ưu tiên.