Hãy khảo sát bảng Items có 1 hàng dữ liệu như sau:
Tno QOH Price
I001 30 10
Hãy cho biết đầu ra của trigger sau khi mặt hàng I001 được bán với số lượng là 30
Create trigger trgInsSales On Sales For insert
As
begin
Declare @var1 int,@var2 int
Select @var1=qoh from items, inserted Where items.itno=inserted.itno
Select @var2=@var1-qty_reqd From inserted
if @var2 <=10
Begin
Print Hàng tồn kho quá ít
Rollback transaction
End
Update items Set qoh=qoh-@var1 From items, inserted
Where items.itno=inserted.itno End"
A -
Trigger sẽ chạy khi có 1 bản ghi được chèn vào bảng sales. Transaction sẽ bị từ chối do lượng tồn kho thấp
B -
Trigger sẽ chạy khi có 1 bản ghi được chèn vào bảng sales. Việc thêm bản ghi mới vào bảng sales và cập nhật dữ liệu trong bảng item được thực hiện trọn vẹn
C -
Trigger sẽ chạy khi có 1 bản ghi được chèn vào bảng sales. Bản ghi mới được chèn thành công vào bảng sales nhưng dữ liệu trong bảng items không được cập nhật do số lượng tồn kho ít
D -
Trigger sẽ chạy khi có 1 bản ghi được chèn vào bảng sales. Tuy nhiên do lượng tồn kho còn ít nên việc thêm vào bảng sales sẽ bị từ chối nhưng bảng items vẫn được cập nhật để thể hiện lượng tồn kho hiện hành
2-
Bạn đang làm việc cho công ty môi giới đầu tư. Công ty có 1 CSDL tên là Stocks chứa 2 bảng CurrentPrice và PastPrice. Giá hiện thời cùa cổ phiếu đầu tư nằm trong bảng CurrentPrice table. Giá cũ trước đó được lưu vào bảng PastPrice. Tầt cả các hàng trong bảng CurrentPrice table đều được cập nhật vào cuối ngày làm việc ngay cả khi cổ phiếu không bị thay đổi kể từ lần cập nhật trước đó. Nếu giá cổ phiếu (stock price) bị thay đổi thì 1 hàng cần được chèn thêm vào bảng PastPrice. Bạn sẽ dùng cách nào sao cho hành động thêm bản ghi mới này được thực hiện tự động.
A -
Tạo 1 trigger AFTER trên bảng CurrentPrice để so sánh giá trị của trường StockPrice trong các bảng inserted và deleted. Nếu giá trị khác nhau thì trigger sẽ chèn 1 hàng vào bảng PastPrice
B -
Tạo 1 trigger AFTER trên bảng CurrentPrice để so sánh giá trị của trường StockPrice trong bảng inserted với trường StockPrice trong bảng CurrentPrice. Nếu giá trị khác nhau thì trigger sẽ chèn 1 hàng vào bảng PastPrice
C -
Tạo 2 ràng buộc (constraint) loại cascading update trên bảng CurrentPrice table để cập nhật đồng thời 1 hàng trên bảng PastPrice
D -
Tạo 1 thủ tục (stored procedure) so sánh giá trị mới của cột StockPrice trong bảng CurrentPrice với giá trị cũ. Nếu giá trị khác nhau thì thủ tục sẽ chèn 1 hàng vào bảng PastPrice
3-
Dữ liệu thống kê về các đội bóng được lưu trữ trong CSDL Statistics. Các cầu thủ của mỗi đội được nhập vào bảng Rosters. Cấu trúc của bảng này như sau:
CREATE TABLE Rosters
( RosterID int NOT NULL, TeamID int NOT NULL, FirstName char(20) NOT NULL, LastName char(20) NOT NULL, CONSTRAINT PK_Rosters PRIMARY KEY (RosterID), CONSTRAINT FK_TeamRoster FOREIGN KEY (TeamID) REFERENCES Team (TeamID) )
Mỗi đội có tối đa 24 cầu thủ.trong bảng phân công (roster) vào bất kỳ lúc nào. Bạn cần phải bảo đảm là số cầu thủ của 1 đội không bao giờ được vượt quá số tối đa. Bạn nên làm gì?
A -
Tạo 1 trigger trên bảng Rosters để xét tính hợp lệ của dữ liệu nhập vào
B -
Tạo 1 rule để xét tính hợp lệ của dữ liệu
C -
Tạo 1 view để thực hiện lệnh UPDATE bao gồm mệnh đề WITH CHECK OPTION trong lệnh định nghĩa VIEW
D -
Thêm 1 ràng buộc CHECK trên bảng Rosters để kiểm tra tính hợp lệ của dữ liệu
4-
Bảo toàn (integrity) nào được dùng cho trigger DELETE
A -
Thực thể ( entity)
B -
Miền (Domain)
C -
Tham chiếu (referential)
D -
Người dùng (user defined)
5-
Hai bảng nào được phép dùng trong UPDATE trigger?
A -
Bảng deleted và bảng trigger
B -
Bảng inserted và bảng deleted
C -
Bảng inserted và bảng updated
D -
Bảng inserted và bảng triggeBảng inserted và bảng deletedr
6-
CSDL của Công ty Cyber Inc. có 1 bảng tên là "issue" dùng để theo dõi sách được phát hành. Đã có sẵn 1 trigger "issue_insert" dùng để cập nhật trạng thái của sách đã phát hành cho khách hàng vào 1 bảng tên "copy" mỗi khi có 1 bản ghi mới trong bảng "issue". Hiện nay công ty muốn trigger này cũng nên cập nhật trạng thái của sách trong bảng "copy" mỗi khi có 1 bản ghi được xoá khỏi bảng "books". Tuỳ chọn nào sau đây nên được thực hiện?
A -
Sử dụng lệnh DELETE TRIGGER để sửa đổi trigger
B -
Sử dụng lệnh ALTER TRIGGER để sửa đổi lại trigger
C -
Tạo 1 trigger khác cho bảng books
D -
Tạo 1 trigger cho lệnh update
7-
Đối tượng nào sau đây được dùng để áp đặt các quy luật hoạt động vào CSDL và duy trì các quy luật bảo toàn:
A -
Rules
B -
Procedure
C -
Trigger
D -
View
8-
Bạn cần tạo một hàm mà sẽ trả về tên của tất cả các nhà xuất bản ở quốc gia được xác định khi người dùng gọi hàm. Hàm nào dưới đây thực hiện được yêu cầu này
A -
CREATE FUNCTION dispName(@country varchar(30)) RETURNS table AS BEGIN Select * FROM Publishers where country = @country END SELECT * FROM dispName('Germany')
B -
CREATE FUNCTION dispName(@country varchar(30)) RETURNS varchar(30) AS BEGIN Select * FROM Publishers where country = @country END SELECT * FROM dispName('Germany')
C -
CREATE FUNCTION dispName(@country varchar(30)) RETURNS table AS RETURN(Select * FROM Publishers where country = @country) SELECT * FROM dispName('Germany')
D -
CREATE FUNCTION dispName(@country varchar(30)) RETURNS table AS BEGIN RETURN(Select * FROM Publishers where country = @country) END SELECT * FROM dispName('Germany')
9-
Allen muốn xoá hàm dbo.fx_order_cost. Lệnh nào được dùng để xoá hàm này?
A -
Hàm DROP
B -
Hàm DELETE
C -
Hàm EDIT
D -
Hàm REMOVE
10-
Hàm nào sau đây không phải là hàm của người dùng ( user – defined function).