T-Sql Là Gì

     

Transact-SQL là ngôn ngữ SQL mở rộng dựa trên SQL chuẩn của ISO (International Organization for Standardization) và ANSI (American National Standards Institute) được sử dụng vào SQL hệ thống khác với P-SQL (Procedural-SQL) dùng trong Oracle.

Bạn đang xem: T-sql là gì

Trong bài này bọn họ sẽ tìm kiếm hiểu sơ qua về T-SQL. Chúng được chia làm 3 nhóm:


Data Definition Language (DDL):

Ðây là những lệnh sử dụng để quản lý các thuộc tính của một database như định nghĩa những hàng hoặc cột của một table, giỏi vị trí data file của một database...thường có dạng

Create object_Name Alter object_Name Drop object_Name

Trong đó object_Name có thể là một table, view, stored procedure, indexes...

Ví dụ:

Lệnh Create sau sẽ tạo ra một table tên Importers với 3 cột CompanyID,CompanyName,Contact

USE Northwind

CREATE TABLE Importers(

CompanyID int NOT NULL,

CompanyName varchar(40) NOT NULL,

contact varchar(40) NOT NULL

)

Lệnh Alter sau đây cho phép ta cụ đổi định nghĩa của một table như thêm(hay bớt) một cột hay một Constraint...Trong ví dụ này ta sẽ thêm cột ContactTitle vào table Importers

USE Northwind

ALTER TABLE Importers

ADD ContactTitle varchar(20) NULL

Lệnh Drop sau đây sẽ trọn vẹn xóa table khỏi database nghĩa là cả định nghĩa của table và data bên trong table đều biến mất (khác với lệnh Delete chỉ xóa data nhưng table vẫn tồn tại).

USE Northwind

DROP TABLE Importers


Data Control Language (DCL):

Ðây là những lệnh quản lý những quyền truy hỏi cập lên từng object (table, view, stored procedure...). Thường gồm dạng sau:

Grant Revoke Deny

Ví dụ:

Lệnh sau sẽ có thể chấp nhận được user trong Public Role được quyền Select đối với table Customer trong database Northwind (Role là một khái niệm giống như Windows Group sẽ được bàn kỹ trong phần Security)

USE Northwind

GRANT SELECT

ON Customers

TO PUBLIC

Lệnh sau sẽ từ chối quyền Select đối với table Customer trong database Northwind của những user trong Public Role

USE Northwind

DENY SELECT

ON Customers

TO PUBLIC

Lệnh sau sẽ xóa bỏ tác dụng của những quyền được có thể chấp nhận được hay từ chối trước đó

USE Northwind

REVOKE SELECT

ON Customers

TO PUBLIC


Manipulation Language (DML):

Ðây là những lệnh phổ biến dùng để xử lý data như Select, Update, Insert, Delete

Ví dụ:

Select

USE Northwind

SELECT CustomerID, CompanyName, ContactName

FROM Customers

WHERE (CustomerID = "alfki" OR CustomerID = "anatr")

ORDER BY ContactName

Insert

USE Northwind

INSERT INTO Territories

VALUES (98101, "Seattle", 2)

Update

USE Northwind

UPDATE Territories

SET TerritoryDescription = "Downtown Seattle"

WHERE TerritoryID = 98101

Delete

USE Northwind

DELETE FROM Territories

WHERE TerritoryID = 98101

Vì phần này hơi căn bản nên chúng tôi thiết nghĩ ko cần giải mê say nhiều. Chú ý trong lệnh Delete bạn có thể tất cả chữ From hay không đều được.

Nhưng mà họ sẽ chạy thử những ví dụ trên ở đâu?

Ðể chạy những câu lệnh thí dụ ở trên bạn cần sử dụng và làm cho quen với Query Analyser

*

  Cú Pháp Của T-SQL:

Phần này chúng ta sẽ bàn về các thành phần tạo cần cú pháp của T-SQL

Identifiers

Ðây chính là tên của các database object. Nó sử dụng để xác định một object. (Chú ý lúc nói đến Object trong SQL hệ thống là họ muốn đề cập đến table, view, stored procedure, index.....Vì hầu như mọi thứ trong SQL server đều được thiết kế theo kiểu hướng đối tượng (object-oriented)). Trong ví dụ sau TableX, KeyCol, mô tả tìm kiếm là những identifiers

CREATE TABLE TableX

(KeyCol INT PRIMARY KEY, mô tả tìm kiếm NVARCHAR(80))

Có nhị loại Identifiers một loại thông thường (Regular Identifier) cùng một loại gọi là Delimited Identifier, loại này cần bao gồm dấu "" tốt dấu <> để ngăn cách. Loại Delimited được sử dụng đối với các chữ trùng với từ khóa của SQL server (reserved keyword) hay những chữ tất cả khoảng trống.

Xem thêm: Hướng Dẫn Cách Gọi Điện Cho Tổng Đài Bỏ Qua Lời Giới Thiệu, Hướng Dẫn Cách Gọi Đi Từ Điện Thoại Cố Định

Ví dụ:

SELECT * FROM

WHERE = 10

Trong ví dụ trên chữ Order trùng với keyword Order bắt buộc cần đặt vào dấu ngoặc vuông <>.

Variables (Biến)

Biến vào T-SQL cũng tất cả chức năng tương tự như trong số ngôn ngữ lập trình khác nghĩa là cần khai báo trước loại dữ liệu trước lúc sử dụng. Biến được bắt đầu bằng dấu
EmpIDVar + 1

Functions (Hàm)

Có 2 loại hàm một loại là built-in với một loại user-defined

Các hàm Built-In được chia thành 3 nhóm:

Các hàm User-Defined (được tạo ra bởi câu lệnh CREATE FUNCTION và phần toàn thân thường được gói vào cặp lệnh BEGIN...END) cũng được phân chia làm các nhóm như sau:

Scalar Functions : Loại này cũng trả về một giá bán trị đơn bằng câu lệnh RETURNS. Table Functions : Loại này trả về một table

Data Type (Loại Dữ Liệu)

Các loại dữ liệu vào SQL server sẽ được bàn kỹ trong số bài sau

Expressions

Các Expressions có dạng Identifier + Operators (như +,-,*,/,=...) + Value

Các thành phần Control-Of Flow

Comments (Chú Thích)

T-SQL cần sử dụng dấu -- để đánh dấu phần chú thích mang lại câu lệnh đơn và sử dụng /*...*/ để chú thích cho một nhóm

Thực Thi những Câu Lệnh SQL

Thực thi một câu lệnh đơn:

Một câu lệnh SQL được phân ra thành những thành phần cú pháp như trên bởi một parser, sau đó SQL Optimizer (một bộ phận quan trọng của SQL Server) sẽ phân tích và tìm bí quyết thực thi (Execute Plan) tối ưu nhất ví dụ như cách nào nhanh và tốn không nhiều tài nguyên của trang bị nhất... Cùng sau đó SQL vps Engine sẽ thực thi và trả về kết quả.

Thực Thi một nhóm lệnh (Batches)

Khi thực thi một đội lệnh SQL vps sẽ phân tích cùng tìm biện pháp tối ưu cho các câu lệnh như một câu lệnh đơn cùng chứa execution plan đã được biên dịch (compiled) vào bộ nhớ sau đó nếu team lệnh trên được gọi lại lần nữa thì SQL hệ thống không cần biên dịch mà gồm thể thực thi ngay lập tức điều này hỗ trợ cho một batch chạy cấp tốc hơn.

Xem thêm: Định Nghĩa Chroma Key Là Gì ?

Lệnh GO

Lệnh này chỉ dùng để gởi một tín hiệu mang lại SQL vps biết đã kết thúc một batch job với yêu cầu thực thi. Nó vốn ko phải là một lệnh vào T-SQL.