Trong lĩnh vực cơ sở dữ liệu có rất nhiều công cụ hỗ trợ triển khai được ưa chuộng sử dụng. Một trong số đó là T-SQL – ngôn ngữ lập trình mở rộng tốt nhất hiện nay. Hãy cùng chúng tôi đi tìm hiểu về loại cú pháp ngôn ngữ hiện đại này trong bài viết dưới đây.
T-SQL là gì?
T-SQL (Transact-SQL) là cú pháp ngôn ngữ lập trình mở rộng của ngôn nhữ SQL gồm có các tính năng được Sybase và Microsoft bổ sung cho SQL. Chẳng hạn như kiểm soát giao dịch, xử lý lỗi và các biến được khai báo.
Thông thường, các ứng dụng thực hiện tương tác với SQL Server bằng cách gửi câu lệnh T-SQL đến máy chủ. Trong đó, các truy vấn T-SQL gồm có câu lệnh SELECT, chọn cột, giới hạn hàng hay sửa đổi các điều kiện tìm kiếm.
Theo mặc định, mã định danh T-SQL có thể sử dụng cho hầu hết các loại máy chủ và đối tượng cơ sở dữ liệu trong SQL Server. Chẳng hạn như table, constraint, columns hay data type. Trong đó, mỗi một loại mã định danh T-SQL yêu cầu tên của đối tượng được triển khai và sử dụng nhằm xác định các đối tượng đó.
Ví dụ về câu lệnh T-SQL
Thông thường, câu lệnh T-SQL được sử dụng nhiều nhất đó là Stored Procedure. Tương tự như Views, Stored Procedure tiến hành triển khai một kế hoạt thực thi lần đầu tiên. Trong đó, các Stored Procedure khác nhau phụ thuộc vào dữ liệu và quy trình thực thi mã T-SQL khác nhau trong các tham số bất kỳ.
Ví dụ: Một hàm được tạo bởi T-SQL sẽ tiến hành nhận các tham số đầu vào và thực hiện các bước xử lý, sau đó trả về kết quả như sau:
Hai trigger phổ biến như AFTER và INSTEAD OF cũng sử dụng tập lệnh S-SQL được lưu trữ dưới dạng Table hoặc View.
Các chuyên gia có thể lập trình các câu lệnh T-SQL để triển khai ứng dụng trong SQL Server. Trong đó, các ứng dụng này được tích hợp các tính năng nâng cao như chèn, cập nhật, xóa và đọc dữ liệu được lưu trữ trong cơ sở dữ liệu.
Bắt đầu từ phiên bản SQL Server 2005 có thể tích hợp với .NET Framework CLR. Điều này cho phép các chuyên gia và người dùng có thể sử dụng ngôn ngữ lập trình .NET trong SQL Server để tạo các thủ tục được lưu trữ.
T-SQL Functions
Sử dụng các hàm T-SQL để xác định các chức năng của SQL Server. Có một số loại hàm T-SQL phổ biến như sau:
- Hàm Aggregate chạy nhiều giá trị và trả về một giá trị cụ thể.
- Hàm Ranking trả về giá trị xếp hạng cho mỗi hàng trong một phân vùng cụ thể.
- Hàm Rowset trả về đối tượng trong câu lệnh SQL.
- Hàm Scalar chạy và trả một giá trị duy nhất.
Ngoài ra, SQL Server cũng hỗ trợ một số tính năng phân tích trong T-SQL. Điều này nhằm hỗ trợ mô tả các nhiệm vụ phân tích phức tạp như xếp hạng, phân vị, đường trung bình động hay tổng tích lũy được thể hiện trong một câu lệnh SQL duy nhất.
Sự khác biệt giữa T-SQL và SQL
Để có thể phân biệt rõ ràng giữa T-SQL và SQL,hãy tham khảo ba yếu tố sau đây:
- T-SQL là phần mở rộng của SQL còn SQL là một loại ngôn ngữ lập trình.
- T-SQL bao gồm lập trình thủ tục và biến cục bộ còn SQL không bao gồm chúng.
- T-SQL là phiên bản độc quyền còn SQL là định dạng mã nguồn mở.
Joins trong T-SQL
Để kết hợp các bảng lại dựa trên cột liên kết có thể sử dụng các phép nối trong T-SQL. Cụ thể, phép nối này sẽ hướng dẫn SQL sử dụng dữ liệu từ một bảng để chọn các hàng trong bảng khác. Đồng thời, nó cũng lựa chọn một số ký hiệu để nối bảng như =, <, >, <>, <=, >=, !=, BETWEEN, LIKE và NOT.
T-SQL có nhiều kiểu nối khác nhau như liên kết trong và liên kết ngoài. Trong đó, nếu như liên kết trong phát hiện ra trùng lặp hàng trong bảng thì nó sẽ trả về hàng đó dưới dạng mệnh đề FORM hoặc WHERE. Tuy nhiên, các liên kết ngoài chỉ có thể được thể hiện dưới dạng mệnh đề FORM với nhiệm vụ tìm và trả về dữ liệu phù hợp nhất từ các bảng.
Tổng kết về T-SQL
Như vậy, bài viết trên đây chúng tôi đã đề cập đến các thông tin liên quan về T-SQL đến độc giả. Hy vọng qua đây bạn đã nắm được các thông tin hữu ích về loại ngôn ngữ lập trình mở rộng này.
Nếu còn gặp bất cứ vướng mắc gì về T-SQL, hãy để lại ở bên bình luận bên dưới, BKHOST sẽ trả lời bạn trong thời gian sớm nhất.
P/s: Bạn cũng có thể truy cập vào Blog của BKHOST để đọc thêm các bài viết chia sẻ kiến thức về lập trình, quản trị mạng, website, domain, hosting, vps, server, email,… Chúc bạn thành công.