[Hệ quản trị cơ sở dữ liệu] Đặc điểm ngôn ngữ truy vấn dữ liệu có cấu trúc

Share:
SQL, viết tắt của Structured Query Language (ngôn ngữ hỏi có cấu trúc), là công cụ sử dụng để tổ chức, quản lý và truy xuất dữ liệu đuợc lưu trữ trong các cơ  sở dữ liệu. SQL là một hệ thống ngôn
ngữ bao gồm tập các câu lệnh sử dụng để tương tác với cơ sở dữ liệu quan hệ.
Tên gọi ngôn ngữ hỏi có cấu trúc phần nào làm chúng ta liên tưởng đến một công cụ (ngôn ngữ)
dùng để truy xuất dữ liệu trong các cơ sở dữ liệu. Thực sự mà nói, khả năng của SQL vượt xa so với
một công cụ truy xuất dữ liệu, mặc dù đây là mục đích ban đầu khi SQL được xây dựng nên và truy
xuất dữ liệu vẫn còn là một trong những chức năng quan trọng của nó. 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.
Trong hầu hết các hệ quản trị cơ sở dữ liệu quan hệ, SQL có những vai trò như sau:
SQL là ngôn ngữ hỏi có tính tương tác: Người sử dụng có thể dễ dàng thông qua các
trình tiện ích để gởi các yêu cầu dưới dạng các câu lệnh SQL đến cơ sở dữ liệu và nhận
kết quả trả về từ cơ sở dữ liệu
SQL là ngôn ngữ lập trình cơ sở dữ liệu: Các lập trình viên có thể nhúng các câu lệnh
SQL vào trong các ngôn ngữ lập trình để xây dựng nên các chương trình ứng dụng giao
tiếp với cơ sở dữ liệu
•  SQL là ngôn ngữ quản trị cơ sở dữ liệu:  Thông qua SQL, người quản trị cơ sở dữ liệu có thể quản lý được cơ sở dữ liệu, định nghĩa các cấu trúc lưu trữ dữ liệu, điều khiển truy cập cơ sở dữ liệu,...
SQL là ngôn ngữ cho các hệ thống khách/chủ (client/server): Trong các hệ thống cơ sở dữ liệu khách/chủ, SQL được sử dụng như là công cụ để giao tiếp giữa các trình ứng dụng phía máy khách với máy chủ cơ sở dữ liệu.
•  SQL là ngôn ngữ truy cập dữ liệu trên Internet:  Cho đến nay, hầu hết các máy chủ Web cũng như các máy chủ trên Internet sử dụng SQL với vai trò là ngôn ngữ để tương  tác với dữ liệu trong các cơ sở dữ liệu.
•  SQL là ngôn ngữ cơ sở dữ liệu phân tán:  Đối với các hệ quản trị cơ sở dữ liệu phân tán, mỗi một hệ thống sử dụng SQL để giao tiếp với các hệ thống khác trên mạng, gởi và nhận các yêu cầu truy xuất dữ liệu với nhau.
>>>
Trong SQL Server, một user database có  thể  bao gồm hai hay nhiều tập tin (mặc định  là 2). Các tập tin trong một database có thể chia làm 3 loại:
  Primary Data File: Mỗi database phải có ít nhất một tập tin Primary data file với phần mởrộng là .MDF. Tập tin này ngoài nhiệm vụ  cất trữ  dữ  liệu thuần túy còn nhiệm vụ  lưu trữ thông tin liên quan  đến  cấu trúc và  đặc  điểm của chính database  đó  (lưu trong các system tables). Ta tuyệt  đối  không nên can thiệp vào các system tables này vì việc này có thể  phá hỏng database.
  Secondary Data File: Mỗi database có thể  không có hoặc có nhiều Secondary Data File. Các tập tin này chỉ thuần túy lưu trữ dữ liệu và có phần mở rộng là .NDF.
  Log File: Mỗi database phải có ít nhất một transaction log file (có phần mở  rộng là .LDF). Log file làm nhiệm vụ  lưu trữ  thông tin liên quan các giao dịch (transaction) thực hiện trên database  đó. Thông tin này một phần phục vụ  cho thao tác Roll Back khi có lỗi giao dịch xảy ra.
Mỗi tập tin trong CSDL (.MDF,.NDF,.LDF) đêu có 5 thuộc tính:
  NAME: Tên logic của tập tin.
  FILENAME: Đường dẫn đầy đủ (tên vật lý).
  SIZE: Kích thước ban đầu của tập tin (KB, MB, GB, TB).
  MAXSIZE: Kích thước tối đa cho phép của tập tin (KB, MB, GB,TB).
  FILEGROWTH : Tốc độ gia tăng kích thước của tập tin (KB, MB, GB, TB,%).
Các tập tin CSDL được tổ chức thành các nhóm gọi là file group theo nguyên tắc:
  Một CSDL có thể  có một hay nhiều  file group. Trong  đó  bắt buộc phải có một  file group
chính gọi là PRIMARY.
  Mỗi  file group  có thể  chứa một hay nhiều tập tin dữ  liệu (.MDF, .NDF). Trong đó  phải có ít nhát 1 tập tin Primary Data File (.MDF) nằm trong group chính PRIMARY.

  Các tập tin Log không thuộc về một file group nào cả.