quán mở rộng cho ngôn ngữ truy vấn quan hệ thời gian. Kết quả thực hiện không liên quan đến bộ thử nghiệm, nhƣng có một mục tiêu về ngữ nghĩa và đƣợc dùng để hỗ trợ trong việc đánh giá mức độ dễ dàng hỗ trợ cho những ngƣời không chuyên về ngôn ngữ truy vấn thời gian. Mục đích là nhằm mô tả lƣợc đồ và truy vấn trong TSQL2 dƣới dạng tự nhiên và thuận tiện, nhƣ sự đánh giá thoải mái của ngƣời dùng về ngôn ngữ này.
Bộ thử nghiệm bao gồm một lƣợc đồ CSDL, ví dụ cho lƣợc đồ và tập các câu lệnh truy vấn trên CSDL này. Các truy vấn đƣợc xác định theo một nguyên tắc phân loại. Trong phạm vi bộ thử nghiệm, không một mô hình dữ liệu thời gian sẵn có nào đƣợc đề cập hoặc sử dụng. Lƣợc đồ CSDL của bộ thử nghiệm đƣợc mô tả sử dụng mô hình ER. Với sự lƣợc bỏ của các thuộc tính minh hoạ thời gian ngƣời dùng định nghĩa, các khía cạnh thời gian cơ sở là ẩn trong sự mô tả lƣợc đồ CSDL. Nội dung của các bảng và các truy vấn đƣợc mô tả dƣới dạng ngôn ngữ tự nhiên.
3.4.1- Lƣợc đồ cho CSDL thử nghiệm.
Ta sẽ xem xét một lƣợc đồ CSDL thử nghiệm bao gồm 3 tập thực thể: NHANVIEN, KYNANG, PHONGBAN mô tả các nhân viên, kỹ năng làm việc và phòng ban tƣơng ứng. Những thuộc tính của các tập thực thể và mối quan hệ giữa chúng đƣợc mô tả tiếp theo nhƣ sau:
Các thực thể trong tập thực thể NHANVIEN đƣợc biểu diễn bởi các thuộc tính ID_NV, HO_TEN và LUONG ghi lại mã nhân viên, họ tên, lƣơng của các nhân viên. Thuộc tính GIOI_TINH và NGAY_SINH lần lƣợt ghi lại giới tính và ngày sinh của mỗi nhân viên. Trong khi lƣơng của một nhân viên là thay đổi theo thời gian, các thuộc tính khác đƣợc giả sử là không thay đổi theo thời gian.
Các kỹ năng, trong tập thực thể KYNANG đƣợc biểu diễn bởi một thuộc tính, TEN_KN ghi lại tên của các kỹ năng riêng biệt. Tên của một kỹ năng là không thay đổi theo thời gian. Các tập thực thể KYNANG và NHANVIEN đƣợc liên kết bởi tập quan hệ n-m, KYNANG-NV. Các kỹ năng của một nhân viên có thể thay đổi theo thời gian. Ví dụ: các nhân viên có khả năng “lập trình”, hay “lái xe” chỉ trong các khoảng thời gian khi họ có chứng chỉ hoặc bằng lái còn giá trị.
Tập thực thể PHONGBAN ghi lại thông tin về các phòng ban qua các thuộc tính TEN_PB, LOI_TUC tƣơng ứng với tên phòng ban và lợi tức của từng phòng. Lợi tức của các phòng có thể thay đổi theo thời gian và tên phòng ban đƣợc giả sử là không thay đổi. Các nhân viên đƣợc kết hợp với phòng ban có nghĩa là 2 tập quan hệ: NV_PB ghi lại nhân viên nào làm việc tại phòng nào (đây là tập quan hệ n-1 thay đổi theo thời gian) và TRUONG_P là tập quan hệ 1-1 thay đổi theo thời gian chỉ ra những nhân viên nào là trƣởng phòng và phòng nào họ quản lý.
Các tập thực thể tuân theo các phụ thuộc hàm dạng ảnh sau:
NHANVIEN: ID_NV HO_TEN ID_NV LUONG ID_NV GIOI_TINH ID_NV NGAY_SINH PHONGBAN: TEN_PB LOI_TUC
Chú ý là: ID_NV là khoá chính của NHANVIEN (nó chỉ là khoá dự tuyển). Với Các bảng lần lƣợt đƣợc xác định với các thuộc tính sau:
Nhanvien_Tbl(ID_NV, Ho_ten, Luong, Gioitinh,
Ngay_sinh, Ten_PB_NV)
Kynang_Tbl(ID_NV_KN, Ky_nang)
3.4.2 Lƣợc đồ trong TSQL2
Ta sẽ thể hiện lƣợc đồ trên vào lƣợc đồ trong TSQL2 nhƣ sau:
SET SCALE AS INTERVAL ’1’ DAY
CREATE TABLE Nhanvien_Tbl
(ID_NV SURROGATE NOT NULL, PRIMARY KEY (ID_NV),
Ho_ten CHARACTER ( 30 ) NOT NULL,
Luong DECIMAL ( 8,2 ) ,
Gioi_tinh CHARACTER ( 1 ) , Ngay_sinh DATE ,
Ten_PB_NV CHARACTER ( 30 ) FOREIGN KEY (Ten_PB_NV)
REFERENCES Phong_ban_Tbl (Ten_PB)) AS VALID STATE ;
CREATE TABLE Kynang_Tbl
(ID_NV_KN SURROGATE NOT NULL, FOREIGN KEY (ID_NV_KN)
REFERENCES Nhanvien_Tbl (ID_NV), Ky_nang CHARACTER ( 30 ) NOT NULL) AS VALID STATE ;
CREATE TABLE Phong_ban_Tbl
(Ten_PB CHARACTER ( 30 ) NOT NULL, PRIMARY KEY (Ten_PB),
Loi_tuc DECIMAL (3,2 ),
ID_Truong_phong SURROGATE NOT NULL, FOREIGN KEY (ID_Truong_phong) REFERENCES Nhanvien_Tbl (ID_NV)) AS VALID STATE ;
Tỷ lệ chia nhỏ đƣợc thiết lập là một ngày. Mọi nhãn thời gian đều đƣợc xác định.
Các câu lệnh này khác với các lệnh SQL92 thông thƣờng ở mệnh đề AS VALID . Cấu trúc này xác định các bảng nhƣ là một bảng trạng thái thời gian hợp thức, ghi lại những thông tin thay đổi thực. Các bảng nhƣ vậy bao gồm các hàng (row) đƣợc gán nhãn thời gian bởi các thành phần thời gian hợp thức (valid-time
elements), đó là tập các chu kỳ (periods) mà chúng là các phân hoạch của dòng thời gian.
Bảng Nhanvien_Tbl xác định tập thực thể NHANVIEN và tập quan hệ NV_PB. Thuộc tính ID_NV xác định các nhân viên; vì thuộc tính Ho_ten là không thay đổi theo thời gian, ta sử dụng một thuộc tính đại diện (SURROGATE) để xác định sự duy nhất của nhân viên (không tồn tại 2 bộ giá trị của nhân viên nào giống hệt nhau). Bảng Kynang_Tbl xác định tập quan hệ KYNANG_NV và tập thực thể Ky_nang. Giá trị của thuộc tính ID_NV_KN trong Kynang_Tbl, và
ID_Truong_phong trong Phong_ban_Tbl, xác định các nhân viên. Cuối cùng, bảng Phong_ban_Tbl xác định tập quan hệ Truong_phong và tập thực thể PHONGBAN.
3.4.3- Cập nhật dữ liệu thử nghiệm.