Tải bản đầy đủ (.pdf) (4 trang)

SQL Server - Part 3 - Overview SQL Language potx

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (581.11 KB, 4 trang )

"Chuyên trang dành cho kỹ thuật viên tin học"
CHIA SẺ - KINH NGHIỆM - HỌC TẬP - THỦ THUẬT
SQL Server - Part 3 - Overview SQL Language
Giới thiệu:
SQL (Structured Query Language - ngôn ngữ truy vấn mang tính cấu trúc) là một 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ệ. Ngôn ngữ này
phát triển vượt xa so với mục đích ban đầu là để phục vụ các hệ quản trị cơ sở dữ liệu đối
tượng-quan hệ. Nó là một tiêu chuẩn ANSI/ISO.
Các từ khóa SQL:
Từ khóa SQL chia thành nhiều nhóm:
1) Lấy dữ liệu
Thao tác sử dụng nhiều nhất trong một cơ sở dữ liệu dựa trên giao dịch là thao tác lấy dữ liệu.
SELECT được sử dụng để lấy dữ liệu từ một hoặc nhiều bảng trong cơ sở dữ liệu, SELECT là lệnh
thường dùng nhất của ngôn ngữ sửa đổi dữ liệu (tạm dịch) (tiếng Anh: Data Manipulation Language
- DML). Trong việc tạo ra câu truy vấn SELECT, người sử dụng phải đưa ra mô tả cho những dữ liệu
mình muốn lấy ra chứ không chỉ ra những hành động vật lý nào bắt buộc phải thực hiện để lấy ra
kết quả đó. Hệ thống cơ sở dữ liệu, hay chính xác hơn là bộ tối ưu hóa câu truy vấn sẽ dịch từ câu
truy vấn sang kế hoạch truy vấn tối ưu.
Những từ khóa liên quan tới SELECT bao gồm:
+ FROM dùng để chỉ định dữ liệu sẽ được lấy ra từ những bảng nào, và các bảng đó quan hệ với
nhau như thế nào.
+ WHERE dùng để xác định những bản ghi nào sẽ được lấy ra, hoặc áp dụng với GROUP BY.
+ GROUP BY dùng để kết hợp các bản ghi có những giá trị liên quan với nhau thành các phần tử của
một tập hợp nhỏ hơn các bản ghi.
+ HAVING dùng để xác định những bản ghi nào, là kết quả từ từ khóa GROUP BY, sẽ được lấy ra.
+ ORDER BY dùng để xác định dữ liệu lấy ra sẽ được sắp xếp theo những cột nào.
1 of 4
Ví dụ sau về việc sử dụng câu lệnh SELECT để lấy danh sách những cuốn sách có giá trị. Câu truy
vấn này sẽ truy lục tất cả các bản ghi trong bảng tblSach với giá trị của cột Giaca lớn hơn 100. Kết
quả sẽ được sắp xếp theo thứ tự tăng dần của các giá trị trong cột Tensach. Dấu (*) trong phần
select list cho biết tất cả các cột của bảng tblSach sẽ được lấy ra và thể hiện ở kết quả.


SELECT * FROM tblSach WHERE Giaca > 100 ORDER BY Tensach;
Hay dịch nôm nay theo tiếng Việt là:
CHỌN * TỪ tblSach Ở ĐÂU Giaca > 100 XẾP THEO Tensach;
Trong đó dấu * mang ý nghĩa là chọn tất cả những cột có trong bảng tblSach
2) Sửa đổi dữ liệu
Ngôn ngữ sửa đổi dữ liệu (Data Manipulation Language - DML), là môt phần nhỏ của ngôn ngữ, có
những thành phần tiêu chuẩn dùng để thêm, cập nhật và xóa dữ liệu delete data.
+ INSERT dùng để thêm dữ liệu vào một bảng đã tồn tại.
+ UPDATE dùng để thay đổi giá trị của một tập hợp các bản ghi trong một bảng.
+ MERGE dùng để kết hợp dữ liệu của nhiều bảng. Nó được dùng như việc kết hợp giữa hai phần tử
INSERT và UPDATE .
+ DELETE xóa những bản ghi tồn tại trong một bảng.
+ TRUNCATE Xóa toàn bộ dữ liệu trong một bảng (không phải là tiêu chuẩn, nhưng là một lệnh SQL
phổ biến).
2 of 4
3) SQL Injection
Là một cách chèn đoạn lệnh SQL vào để thực hiện việc vượt qua sự kiểm tra của mệnh đề WHERE.
Ví dụ một câu truy vấn lấy tài khỏa người dùng:
SELECT ID, Name FROM Users WHERE Username='JONH' AND Password='1234'
Câu trên chỉ có thể đúng nếu thỏa cặp Usernamevà Password tồn tại trong cơ sở dữ liệu. Câu trên có
thể viết injection như sau : thay cụm từ JONH thành : ' OR 1=1 or''=' (lưu ý ký tự nháy đơn ') khi đó
câu SQL sẽ trở thành :
SELECT ID, Name FROM Users WHERE Username='' OR 1=1 OR''='' AND Password='1234'
Đoạn mã này hoạt động với bất cứ password nào. Việc phòng chống SQL Injection cũng không quá
khó, chỉ cần chú ý khi viết là có thể chống lại được.
4) Môi trường ứng dụng
Câu lệnh SQL được dùng để truy vấn dữ liệu ở các môi trường khác nhau như môi trường Website,
chương trình ứng dụng các dữ liệu dùng SQL để truy vấn hoặc thêm bớt được lưu trữ tại một hoặc
3 of 4
một tập hợp tác tập tin được gọi là cơ sở dữ liệu. Các cơ sở dữ liệu được vận hành bởi các hệ quản

trị cơ sở dữ liệu đây là các phần mềm hay hệ thống được thiết kế để quản trị một cơ sở dữ liệu.
Có rất nhiều dạng cơ sở dữ liệu khác nhau lấy SQL làm nền tảng nhưng phổ biến nhất trên thế giới
hiện nay là Các hệ quản trị CSDL phổ biến được nhiều người biết đến là MySQL, Oracle,
PostgreSQL, SQL Server, DB2, Infomix, v.v.
Phần lớn các hệ quản trị CSDL kể trên hoạt động tốt trên nhiều hệ điều hành khác nhau như Linux,
Unix và MacOS ngoại trừ SQL Server của Microsoft chỉ chạy trên hệ điều hành Windows.
OK mình vừa trình bày xong phần tìm hiểu về ngôn ngữ SQL.


Công ty TNHH đầu tư phát triển tin học GC Com
Chuyên trang kỹ thuật máy vi tính cho kỹ thuật viên tin học
Điện thoại: (073) - 3.511.373 - 6.274.294
Website:
4 of 4

×