Giới thiệu chung
SQL (Structured Query Language, đọc là "sequel") là tập lệnh truy xuất trên cơ dữ liệu (CSDL) quan hệ.
Ngôn ngữ SQL, được IBM sử dụng đầu tiên trong hệ quản trị CSDL Sytem R vào giữa năm 70, hệ ngôn ngữ SQL đầu tiên (SEQUEL 2) được IBM công bố vào tháng 11 năm 1976. Năm 1979, tập đoàn ORACLE giới thiệu thương phẩm đầu tiên của SQL, SQL cũng được cài đặt trong các hệ quản trị CSDL như DB2 của IBM và SQL/DS.
Ngày nay, SQL được sử dụng rộng rãi và được xem là ngôn ngữ chuẩn để truy cập CSDL quan hệ. Và SQL là ngôn ngữ vận hành chủ yếu trên các phần mềm được gọi là hệ quản trị cơ sở dữ liệu.
Hệ quản trị cơ sở dữ liệu (Database Management Sytem - DBMS) là một hệ thống các phần mềm cho phép người dùng tạo lập cơ sở dữ liệu (định nghĩa, xây dựng, thao tác và quản trị) trên đó và được quyền điều khiển mọi truy cập trên cơ sở dữ liệu.
Hiện nay có rất nhiều phần mềm HQT CSDL được phát hành như: ORACLE, MS ACCESS, DB2,..
HQT CSDL quan hệ là HQT CSDL được phát triển theo mô hình quan hệ -> được sử dụng rộng rãi và phổ biến nhất hiện nay.
Một số khái niệm cơ bản
Cơ sơ dữ liệu (CSDL) - Database
Một cơ sơ dữ liệu (database) tương tự một tập tin dữ liệu, nơi để lưu trữ dữ liệu. Giống như một tập tin dữ liệu, một CSDL không trình bày thông tin một cách trực tiếp đến người dùng, muốn xem dữ liệu, người dùng phải chạy một ứng dụng truy xuất dữ liệu từ cơ sở dữ liệu và khi đó dữ liệu sẽ được trình bày trong một dạng dễ hiểu và thuận tiện.
Khi dữ liệu được lưu trong các tập tin thì phải có ứng dụng (được lập trình) để làm việc với cấu trúc đặc biệt của mỗi tập tin dữ liệu. Ngược lại, một CSDL chứa đựng một catalog mà các ứng dụng có thể dùng để xác định dữ liệu được tổ chức như thế nào. Các ứng dụng CSDL cùng loại có thể dùng catalog để trình bày đến người dùng các dữ liệu từ cơ sở dữ liệu khác nhau một cách linh động mà không bị phụ thuộc vào một dạng đặc biệt.
Các hệ thống cơ sở dữ liệu mạnh tức là các tập tin dữ liệu được tổ chức theo một mức độ cao.
Một cơ sở dữ liệu được thiết kế tốt sẽ không bao giờ có sự trùng lặp thông tin khi người dùng hoặc ứng dụng cập nhật cùng thời điểm. Các mảnh thông tin liên quan được kết nhóm với nhau trong một cấu trúc đơn hoặc mẫu tin và các mối quan hệ có thể được định nghĩa giữa các cấu trước này và các mẫu tin này.
Cơ sở dữ liệu quan hệ (Relational Database)
Mặc dù có nhiều cách khác nhau để tổ chức dữ liệu trong một cơ sở dữ liệu, các cơ sở dữ liệu quan hệ là có sở dữ liệu hiệu quả nhất. Các hệ thống CSDL quan hệ là một ứng dụng thuộc về lý thuyết tập hợp toán học đối với các vấn đề tổ chức dữ liệu một cách hiệu quả. Trong cơ sở dữ lieuj quan hiệu, dữ liệu được thu thập vào các bảng (table).
Một bảng trình bày lớp các đối tượng quan trọng đối với một tổ chức. Mỗi bảng được xây dựng thành các cột và cá dòng (được gọi là các thuộc tính và các bộ trong lý thuyết quan hệ). Mỗi cột trình bày vài thuộc tính của các đối được thể hiện trong bảng.
Khi tổ chức dữ liệu vào các bảng, ta có nhiều cách khác nhau để định nghĩa các bảng. Lý thuyết cơ sở dữ liệu định nghĩa một phương thức gọi là dạng chuẩn (normalization) mà nó đảm bảo rằng các bảng mà ta định nghĩa sẽ được tổ chức dữ liệu một cách hiệu quả.
Ngôn ngữ truy vấn dữ liệu
Để làm việc với dữ liệu trong một cơ sở dữ liệu, ta phải dùng một tập các lệnh và câu lệnh (một ngôn ngữ) được hỗ trợ bới DBMS. Ta có thể dùng vài ngôn ngữ khác nhau với CSDL quan hệ, thông thường nhất là SQL. Cú pháp câu lệnh của SQL được hỗ trợ bởi SQL Server được gọi Transact-SQL và Transact-SQL là ngôn ngữ chính được dùng bởi hệ quản trị CSDL SQL Server.
XML
Extensible Markup Language (XML) là ngôn ngữ lập trình siêu văn bản, dùng để mô tả nội dung của một tập dữ liệu và cách dữ liệu sẽ được kết xuất ra thiết bị hoặc hiển thị trên trang web.