Khóa ngoại của một bảng A là một cột hoặc một tập nhiều cột không là khóa chính của bảng A nhưng lại là khóa chính của một bảng B, nhằm tạo nên mối quan hệ giữa 2 bảng A và B trong một[r]
Trang 1MỘT SỐ CÂU HỎI VẤN ĐÁP
1 Nêu các phiên bản của SQL Server
1 Enterprise2 Standard3 Workgroup4 Developer5 Express
2 Có mấy loại CSDL kể tên, ví dụ
Cơ sở dữ liệu hệ thống: Master
Cơ sở dữ liệu người dùng: CSDL QLYDIEM
3 Về mặc Logic dữ liệu ở mỗi CSDL trong SQL Server được lưu ở đâu, kế tên
Dữ liệu lưu trên các đối tượng của SQL như: Table, View, Procedure, Function
4 Về mặt vật lý, dữ liệu ở mỗi CSDL trong SQL Server được lưu ở đâu, kể tên
Dữ liệu lưu trữ ít nhất trong 2 tập tin có đuôi mdf (tt dữ liệu) và ldf (nhật ký)
5 Kiểu dữ liệu TinyInt: ý nghĩa, độ dài tối đa, phạm vi, ví dụ
Số nguyên không âm, 1 byte, có giá trị 0 – 255 Điểm nguyên, bậc lương
6 Kiểu dữ liệu Int: ý nghĩa, độ dài tối đa, phạm vi, ví dụ
Số nguyên, 4 byte, -2,147,483,468 -> 2,147,483,467 (-231 -> + 231-1)
Số lượng, Thành tiền
7 Kiểu dữ liệu SmallInt: ý nghĩa, độ dài tối đa, phạm vi, ví dụ.
Số nguyên nhỏ, 2 byte, -32.768 -> 32.767, (-215 -> + 215-1) Số lượng
8 Kiểu dữ liệu BigInt: ý nghĩa, độ dài tối đa, phạm vi, ví dụ
Số nguyên lớn, 8 byte, -263 -> +263 -1
9 Kiểu dữ liệu Char/ Nchar: ý nghĩa, độ dài tối đa,ví dụ.
Char(n) Kiểu chuỗi có chiều dài cố định chứa chính xác n Byte ký tự độ dài tối đa
8000 ký tự
Nchar(n): giống kiểu char nhung hỗ trợ dấu TV
10 Kiểu dữ liệu Vachar/Nvarchar: ý nghĩa, độ dài tối đa, ví dụ
Varchar(n): Kiểu chỗi có chiều dài biến đổi chứa tối đa n Byte ký tự, độ dài tối đa
8000
Nvarchar(n): giống kiểu varchar nhưng hỗ trợ dấu TV
11 Kiểu dữ liệu SmalDateTime: ý nghĩa, độ dài tối đa, ví dụ.
Kiểu ngày giờ chính xác đến phần trăn phút 1/1/1900 - 06/06/2079, 4 byte Ngày sinh,
12 Kiểu dữ liệu Numeric(p,s): Ý nghĩa, ví dụ
Kiếu số có độ dài cố định chính xác p ký tự (tính cả dấu tp) trong đó có s số lẻ, 0 <=
s <= p, Ví dụ: Diem Numeric(4,1)
13 Kiểu dữ liệu Bit: ý nghĩa, độ dài tối đa, ví dụ.
Kiểu bit là kiểu Logic, nhận giá trị True/False hoặc null, 1 bit Ví dụ: Gioitinh
Trang 214 Thuộc tính Default: ý nghĩa, ví dụ
Xác định giá trị mặc định khi thêm mới, ví dụ: Gioitinh: Default: True
15 Thuộc tính Identity: ý nghĩa, ví dụ.
Identity(i,n): là kiểu nguyên bắt đầu từ i tự động tăng n đơn vị
Ví dụ: STT Identity(1,1): bắt đầu từ 1, tự động tăng lên 1
16 Ràng buộc Check: ý nghĩa, ví dụ.
Kiểm tra điều kiện dữ liệu nhập
Ví dụ:
Điều kiện nhập điểm MH là CHECK (DiemMH<=10 and DiemMH>=0)
17 Khóa chính (Primary Key) là gì, Một bảng dữ liệu có thể mấy khóa chính, cho ví dụ.
Khoá chính của một bảng là một hoặc một tập nhiều cột mà giá trị của chúng là duy nhất trong bảng, không nhận giá trị NULL
Ví dụ: Trong DMLOP, Malop là khóa chính
Trong một bảng có duy nhất một khóa chính
18 Khóa phụ (Unique Key) là gì, Một bảng dữ liệu có thể mấy khóa phụ, cho ví dụ.
Khóa phụ không là khóa chính nhưng có thể có nhiều cột hoặc tập cột mà giá trị của chúng duy nhất
Một bảng có thể có nhiều khóa phụ
Ví dụ: SINHVIEN, Khóa phụ là STT, SBD
19 Khóa Ngoại (Foreign Key) là gì, Một bảng dữ liệu có thể mấy khóa ngoại, cho ví dụ.
Khóa ngoại của một bảng A là một cột hoặc một tập nhiều cột không là khóa chính của bảng A nhưng lại là khóa chính của một bảng B, nhằm tạo nên mối quan hệ giữa
2 bảng A và B trong một cơ sở dữ liệu
Một bảng có nhiều khóa ngoại
Ví dụ: DIEMTHI có 2 khóa ngoại là MASV và MAMON, khóa chính là cặp
(MASV,MAMON)
20 Trong câu lệnh truy vấn Select Từ khóa Group by trả lời cho các câu hỏi dạng nào.
Dạng tính tổng theo từng nhóm
Thỏa mản ít nhất 2,3 giá trị Nhiều nhất 2,3 giá trị trong bảng có quan hệ nhiều
Ví dụ:
Đếm số sinh viên của mỗi lớp
Cho biết sv nào học ít nhất 2 môn có mã ‘001’ và ‘002’
21 Viết cấu trúc lệnh IF, Giải thích.
If <điều kiện>
Lệnh| Khối_lệnh 1
Trang 3[Else Lệnh| Khối_lệnh 2]
Giải thích Nếu điều kiện đúng thì thực hiện nhóm lệnh 1, rồi kết thúc, ngược lại thì thực hiện nhóm lệnh 2, rồi kết thúc
22 Khai báo một biến x kiểu nguyên, và gán giá trị 0 cho nó.
Declare x int
Set x=0
23 Khai báo một biến ht kiểu chuỗi và gán họ tên của sinh viên đầu tiên cho biến
Declare ht Nvarchar(30)
Select ht=Hoten from SINHVIEN
24 Viết cấu câu trúc lệnh Case dạng 1, Giải thích
Case Biểu_thức
When Giá_trị 1 Then kết_quả 1
[When Giá_trị 2 Then Kết_quả 2
[ n]
[ Else kết_quả_khác]
End
Nếu biểu thức là giá trị 1 thì nhận kết quả 1 , rồi kết thúc, nếu biểu thức là giá trị 2 thì nhận kết quả 2, rồi kết thúc, nếu biểu thức không là giá trị 1,2, n thì nhận kết quả khác, rồi kết thúc
25 Viết cấu trúc lệnh While, Giải thích.
While <điều_kiện>
Lệnh| Khối lệnh
[Break]
[Continue]
Kiểm tra điều kiện, nếu điều kiện đúng thì thực hiện nhóm lệnh, quay lên kiểm tra điều kiện, cho đến khi điều kiện sai thì thoát khỏi vòng lặp, Nếu gặp lệnh Break thì thoát
khỏi vòng lặp, nếu gặp Continue thì trở lại đầu vòng While, bỏ qua các lệnh sau đó
26 Phân biệt giữa hàm và thủ tục, cho ví dụ
Đoạn lệnh không bắt buộc năm trong Đoạn lệnh bắt buộc nằm trong
Có nhiều giá trị ra Có một giá trị trả về
Exec <tên thủ tục> ds biến/giá trị vào Tên hàm (<danh sách biến/giá trị vào>)
27 Trigger là gì? Một số ứng dụng.
Trigger là một loại stored procedure đặc biệt Tự động thực hiện khi có thao tác
insert, delete hoặc update trên dữ liệu.
Trang 4Tạo một Trigger sao cho khi thêm MỘT sinh viên mới vào bảng SINHVIEN thì SiSo của lớp tương ứng trong bảng DMLOP tự động tăng lên 1
28 Transaction là gì? Một số ứng dụng.
Giao tác (Transaction) là một tập hợp có thứ tự các thao tác và chúng chỉ có thể cùng nhau thành công, hoặc cùng nhau thất bại
Ví dụ: khi thêm MỘT sinh viên mới vào bảng SINHVIEN thì SiSo của lớp tương ứng trong bảng DMLOP tự động tăng lên 1
- Thêm một sv vào bảng SINHVIEN
- Cập nhật lại sĩ số bảng DMLOP tăng lên 1
29 Tài khoản SA là gì? Hãy xác lập mật khẩu cho tài khoản SA?
Tài khoản SA (SysAdmin): tài khoản toàn quyền làm việc với tất cả các đối tượng
và các lệnh SQL, …
B1.Vào mục Sercurity / Logins / sa / Properties Sửa mật khẩu Status: Enabled B2 Thay đổi chế độ xác thực: kích phải tại dd kết nối / Properties / Security / chọn xác thực SQL Server and Windows
B3 Khởi động lại Services: kích phải tại dd kết nối / Restart
30 Login là gì? User là gì? Mối quan hệ giữa Login và user.
Login: Là tài khoản mà người sử dụng dùng để kết nối với SQL Server
User: Là người sử dụng cơ sở dữ liệu.
– Một login có thể có quyền truy cập 0-n database
– Trong mỗi database, một login sẽ ứng với một user
31 Role là gì? Ý nghĩa của Db_owner
Nhóm các user/login, Ý nghĩa của Role Db_owner: có tất cả các quyền đối với CSDL như: tạo csdl, xem, cập nhật, xóa, tạo đối tượng,
Không có quyền: ?
32 Roles là gì? Ý nghĩa của Db_accessadmin
Có quyền thêm, xóa Login
33 Role là gì? Ý nghĩa của Db_securityadmin
Có quyền quản trị các quyền đối với CSDL, quyền đối với các đối tượng, quyền role
và các thành viên của role
34 Role là gì? Ý nghĩa Db_datawrite
Có quyền xóa, cập nhật, xem csdl Không có quyền gì:
35 Role là gì? Ý nghĩa Db_datareader
Có quyền xem dữ liệu Không có quyền gì:
36 Role là gì? Ý nghĩa Db_denydatawrite
Có quyền cấm cập nhật, xóa dữ liệu Không có quyền gì, có quyền gì
37 Role là gì? Ý nghĩa Db_denydatareader
Có quyền cấm xem dữ liệu, Không có quyền gì, có quyền gì
38 Role là gì? Ý nghĩa Db_Backupoperator
Trang 5Có quyền Backup dữ liệu, không có quyền gì.