Năm 1970, khi đề xuất mô hình CSDL quan hệ, trong lý thuyết ban đầu Codd E.F đưa ra ba dạng chuẩn của quan hệ. Đó là: dạng chuẩn thứ nhất (First Normal Form-1NF), dạng chuẩn thứ hai (2NF), dạng chuẩn thứ ba (3NF). Ngoài ba dạng chuẩn trên trong lý thuyết chuẩn hoá còn có một số dạng chuẩn khác, tuy nhiên chúng không sử dụng rộng rãi nên ta không xét ở đây.
• Dạng chuẩn thứ nhất (First Normal Form-1NF): Một lược đồ quan hệ R được gọi là ở dạng chuẩn thứ nhất khi và chỉ khi toàn bộ các miền có mặt trong R đều chỉ chứa các giá trị nguyên tố, tức là các giá trị đơn.
• Dạng chuẩn thứ hai (2NF): Lược đồ quan hệ R ở dạng chuẩn hai nếu nó ở dạng chuẩn một và nếu mỗi thuộc tính không khóa của R là phụ thuộc hàm đầy đủ vào khóa chính, không phụ thuộc hàm vào một phần của khóa.
• Dạng chuẩn thứ ba (3NF): Lược đồ quan hệ R là ở dạng chuẩn ba nếu nó là dạng chuẩn hai và mỗi thuộc tính không khóa của R không phụ thuộc hàm bắc cầu vào khóa chính. Hay nói cách khác, các thuộc tính không khóa không phụ
3.2.6 Hệ quản trị cơ sở dữ liệu SQL Server
SQL được sử dụng để điều khiển tất cả các chức năng mà một hệ quản trị cơ sở dữ liệu cung cấp cho người dùng bao gồm:
• Định nghĩa dữ liệu: SQL cung cấp khả năng định nghĩa các cơ sở dữ liệu, các cấu trúc lưu trữ và tổ chức dữ liệu cũng như mối quan hệ giữa các thành phần dữ liệu.
• Truy xuất và thao tác dữ liệu: Với SQL, người dùng có thể dễ dàng thực hiện các thao tác truy xuất, bổ sung, cập nhật và loại bỏ dữ liệu trong các cơ sở dữ liệu.
• Điều khiển truy cập: SQL có thể được sử dụng để cấp phát và kiểm soát các thao tác của người sử dụng trên dữ liệu, đảm bảo sự an toàn cho cơ sở dữ liệu.
• Đảm bảo toàn vẹn dữ liệu: SQL định nghĩa các ràng buộc toàn vẹn trong cơ sở dữ liệu nhờ đó đảm bảo tính hợp lệ và chính xác của dữ liệu trước các thao tác cập nhật cũng như các lỗi của hệ thống.
Như vậy, có thể nói rằng SQL là một ngôn ngữ hoàn thiện được sử dụng trong các hệ thống cơ sở dữ liệu và là một thành phần không thể thiếu trong các hệ quản trị cơ sở dữ liệu. Mặc dù SQL không phải là một ngôn ngữ lập trình như C, C++, Java,... song các câu lệnh mà SQL cung cấp có thể được nhúng vào trong các ngôn ngữ lập trình nhằm xây dựng các ứng dụng tương tác với cơ sở dữ liệu.
Khác với các ngôn ngữ lập trình quen thuộc như C, C++, Java, ... SQL là ngôn ngữ có tính khai báo. Với SQL, người dùng chỉ cần mô tả các yêu cầu cần phải thực hiện trên cơ sở dữ liệu mà không cần phải chỉ ra cách thức thực hiện các yêu cầu như thế nào. Chính vì vậy, SQL là ngôn ngữ dễ tiếp cận và dễ sử dụng.
Tính năng nổi trội trong SQL Server 2008: • Đưa ra cơ chế chống lỗi phụ.
• Microsoft đưa ra nền tảng Quản Lý Tường Minh cho phép công việc quản trị trở nên dễ dàng nhưng vẫn đảm bảo được tính hiểu quả.
• Ứng dụng CSDL SQL được sử dụng hầu hết trong các ứng như Exchange Server 2007 UM, Sharepoint Server 2007 cho đến OCS 2007 vì vậy nếu không có khả năng giám sát tập trung hệ CSDL thì đúng là một thiếu sót nặng nề. Vì vậy với việc tích hợp tốt nhất với các sản phẩm giám sát hệ thống System Center, doanh nghiệp sẽ hơn trong việc quản lý và giám sát tự động hạ tầng. • Với sự ra đời của nền tảng DotNet 3.5 và bộ công cụ lập trình Visual Studio
2008 đã giúp cho các nhà phát triển ứng dụng và CSDL trên SQL Server 2008 trở nên hiệu quả hơn nhiều. Đáng kể nhất trong số đó là ADO.Net mới trong DotNet 3.5 đưa ra khái niệm Nền Tảng Đối Tượng ADO giúp cho lập trình viên thao tác với CSDL như một đối tượng. Kế đến không thể nhắc tới đứa con cưng con ngôn ngữ CSDL là LINQ, nhờ nó mà các lập trình viên có thể chuyển đôi qua lại giữa ngôn ngữ ứng dụng như C#,VB.NET và ngôn ngữ truy vấn SQL, nhờ vậy các nhà lập trình có thể thực hiện truy vấn CSDL ngay trong các dòng lệnh của ngôn ngữ lập trình ứng dụng.
• Khi người dùng có thể thực hiện một truy vấn mà liên quan đến dữ liệu trên hai phân vùng CSDL thì SQL Server 2008 sẽ xử lý truy vấn này song hành cùng lúc trên mỗi phân vùng.
• Tính năng kinh doanh thông minh là tính năng có tầm quan trọng lớn trong các hệ CSDL lớn đặc biệt trong khối tài chính như ngân hàng, chứng khoán.