Khảo sát thủ tục sau: Create procedure prcTemp @tmp int output As Select @tmp=ytd_sales from titles Return Hãy xác định lệnh SQL được dùng để hiển thị giá trị của biến đầu ra khi thủ tục này được gọi:
A -
Declare @temp int
Exec prcTemp @tmp=@temp output
Print @temp
B -
Exec prcTemp @tmp output Print @tmp
C -
Declare @tmp int Exec prcTemp @tmp Print @tmp
D -
Declare @temp int Exec prcTemp @tmp=@temp
Print @temp
2-
Bạn đang xây dựng CSDL phục vụ cho việc bán lẻ sách qua mạng của 1 công ty. Khách hàng có thể sử dụng web site để đặt mua sách. Các đơn đặt hàng sẽ được đưa vào CSDL BookOrders. Thông tin đặt hàng này sẽ được chuyển vào CSDL Reports vào cuối mỗi ngày. CSDL Reports chứa các bảng Order và LineItem.
Khách hàng có thể sử dụng web site của công ty để xem các đơn đặt hàng trong CSDL Reports. Khách hàng chỉ nên thấy đơn đặt hàng của riêng họ mà thôi và không được quyền chỉnh sửa hoá đơn cũ. Họ cùng không đuợc nhìn thấy giá trị của khoá chính của đơn đặt hàng. Bạn nên làm gì?
A -
Tạo 1 view hiển thị thông tin đặt hàng cho mỗi khách hàng
B -
Tạo 1 thủ tục người dùng để hiển thị thông tin đơn đặt hàng cho 1 khách hàng được cho
C -
Tạo 1 hàm người dùng loại scalar để trả về thông tin đơn đặt hàng cho 1 khách hàng được cho
D -
Gán quyền SELECT trên bảng Order và LineItem cho tất cả các khách hàng
3-
Lệnh nào dưới đây được dùng để xóa 1 login ID ra khỏi SQL Server:
A -
sp_droplogin
B -
drop login
C -
sp_removelogin
D -
Chỉ có thể xóa các login bằng Enterprise Manager
4-
Các trigger sau được tạo ra trên bảng Publishers: CREATE TRIGGER trgDeletePublisher1 ON Publishers AFTER DELETE AS print 'Deletion successful'
CREATE TRIGGER trgDeletedPublisher2 ON Publishers AFTER DELETE AS print 'Details of the publisher deleted:' Select * From deleted
CREATE TRIGGER trgDeletePublisher3 ON Publishers AFTER DELETE AS print 'One publisher deleted' Cái gì sẽ được in ra khi lệnh DELETE sau được thực thi? DELETE Publishers Where pub_name = 'GGG&G'
A -
Deletion successful Details of the publisher deleted: pub_id pub_name city state country ---------------------------------------------------------- 9901 GGG&G München NULL Germany (1 row(s) affected) One publisher deleted
B -
Details of the publisher deleted: pub_id pub_name city state country ------ ---------------------------------------------------- 9901 GGG&G München NULL Germany (1 row(s) affected) Deletion successful"
C -
Details of the publisher deleted: pub_id pub_name city state country ------ ---------------------------------------------------- 9901 GGG&G München NULL Germany (1 row(s) affected) One publisher deleted
D -
Báo lỗi vì không thể có 3 trigger cho cùng 1 lệnh DELETE trên bảng Publishers
5-
Phát biểu nào sau đây là đúng khi nói về trigger:
A -
Trigger cần được thực thi 1 cách tường minh
B -
Trigger có thể giám sát được các thay đổi dữ liệu không được phép
C -
Trigger được thực hiện tự động mỗi khi lệnh TRUNCATE TABLE được dùng
D -
Trigger có thể trả về dữ liệu cho người dùng
6-
Bảng Student được tạo ra bởi lệnh sau: CREATE TABLE Student ( OwnerID int IDENTITY (1, 1) NOT NULL, FirstName char(20) NULL, LastName char(30) NULL, BirthDate date NULL, CONSTRAINT PK_Owners PRIMARY KEY (Owner ID) ) Khi thông tin về 1 sinh viên (student) nào đó được tạo ra, ngày sinh của sinh viên đó nếu không được nhập vào thì database cần tạo 1 thông báo lỗi. Bạn cần chọn cách thực hiện nào để kiểm tra tính hợp lệ của trường ngày sinh và tạo thông báo lỗi khi không hợp lệ:
A -
Thêm ràng buộc CHECK vào trường BirthDate (ngày sinh)
B -
Tạo 1 rule rồi gán nó cho trường BirthDate
C -
Thay đổi cấu trúc bảng sao cho trường BirthDate không được phép giái trị null
D -
Tạo trigger trên bảng Student để xét tính hợp lệ của trường birthDate
7-
Phát biểu nào sau đây là đúng khi định nghĩa về trigger:
A -
Trigger giống như procedure, có thể được gọi 1 cách tường minh để thực hiện
B -
Trigger có thể giúp tránh được những thay đổi về dữ liệu không được phép, hoặc sai
C -
Trigger có thể trả về dữ liệu cho người dùng
D -
Trigger không thể gọi 1 trigger khác bởi vì trigger không thể gọi tường minh được
8-
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
9-
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
10-
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 rule để xét tính hợp lệ của dữ liệu
B -
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
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 -
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