NEW
Font size
WorksheetsDA201_Thi thử GK
Total questions: 28
Worksheet time: 14mins
Một câu truy vấn cần lọc ra các kiến trúc sư ở "Hà Nội" và sau đó chỉ hiển thị các nhóm năm sinh có nhiều hơn 3 người. Thứ tự đúng của các mệnh đề để thực hiện yêu cầu này là gì?
SELECT, FROM, GROUP BY, HAVING, WHERE
SELECT, FROM, WHERE, GROUP BY, HAVING
SELECT, FROM, HAVING, WHERE, GROUP BY
SELECT, WHERE, FROM, GROUP BY, HAVING
Dựa vào logic thực thi, tại sao mệnh đề HAVING có thể sử dụng điều kiện trên một hàm tổng hợp (ví dụ: COUNT(id) > 2) trong khi WHERE không thể?
Vì WHERE được thực thi trước khi các hàng được nhóm và hàm tổng hợp được tính toán.
Vì HAVING là một phiên bản nâng cấp và mạnh mẽ hơn của WHERE.
Vì WHERE chỉ làm việc với các cột có trong bảng gốc, không làm việc với các cột được tạo ra.
Vì cú pháp của SQL quy định rằng chỉ HAVING mới được đi kèm với các hàm tổng hợp.
Lệnh DML nào có nguy cơ gây ảnh hưởng đến toàn bộ bảng nếu thiếu mệnh đề WHERE?
Chỉ có lệnh DELETE.
Chỉ có lệnh UPDATE.
Cả lệnh UPDATE và DELETE.
Cả lệnh INSERT, UPDATE và DELETE.
Việc lưu trữ giá trị "Quần Jeans | Nam, Nữ" trong một ô dữ liệu là vi phạm Dạng chuẩn 1 (1NF) vì lý do nào sau đây?
Dòng dữ liệu không còn là độc nhất.
Ô dữ liệu không chứa giá trị nguyên tử.
Vi phạm quy tắc về khóa chính.
Gây ra phụ thuộc bắc cầu.
Trong một bảng OrderDetails có khóa chính ghép là (OrderID, ProductID), thuộc tính OrderDate chỉ phụ thuộc vào OrderID. Đây là một ví dụ về việc vi phạm dạng chuẩn nào?
Dạng chuẩn 1 (1NF) vì dữ liệu không nguyên tử.
Dạng chuẩn 2 (2NF) vì có thuộc tính không khóa phụ thuộc vào một phần của khóa chính.
Dạng chuẩn 3 (3NF) vì có thuộc tính phụ thuộc bắc cầu.
Bảng này đã đạt cả 3 dạng chuẩn cơ bản.
Câu hỏi: Xét chuỗi phụ thuộc: StudentID -> ClassID -> TeacherName. Đây là một ví dụ về "phụ thuộc bắc cầu". Giải pháp được đề xuất trong bài để loại bỏ vấn đề này ngụ ý điều gì?
Cần tạo một bảng riêng cho Teacher và Class, sau đó liên kết chúng bằng khóa ngoại.
Cần xóa thuộc tính TeacherName khỏi cơ sở dữ liệu.
Cần gộp StudentID và ClassID thành khóa chính.
Cần thêm TeacherName vào một bảng Address mới.
Câu hỏi: Để tìm những người có tên chứa chữ "Minh" nhưng không phải là tên đệm (tức là "Minh" ở đầu hoặc cuối tên), mẫu LIKE nào sau đây là phù hợp nhất?
LIKE '% Minh %'
LIKE 'Minh %' OR LIKE '% Minh'
LIKE '_Minh_'
LIKE '%Minh%' AND NOT LIKE '% Minh %'
Câu hỏi: Một truy vấn sử dụng LIMIT 5 OFFSET 10. Kết quả trả về sẽ là gì?
10 bản ghi đầu tiên, bắt đầu từ bản ghi thứ 5.
5 bản ghi, bắt đầu từ bản ghi thứ 11.
10 bản ghi, bắt đầu từ bản ghi thứ 6.
5 bản ghi đầu tiên, sau đó bỏ qua 10 bản ghi.
Câu hỏi: Tại sao Mô hình Thông tin (Information Model) lại quan trọng đối với các bên liên quan phi kỹ thuật như nhà quản lý?
Vì nó cung cấp chi tiết về kiểu dữ liệu và khóa ngoại để họ phê duyệt.
Vì nó giúp họ hiểu cấu trúc thông tin của doanh nghiệp ở mức độ khái niệm mà không cần đi sâu vào kỹ thuật.
Vì nó là bản thiết kế cuối cùng để xây dựng CSDL thực tế.
Vì nó cho phép họ trực tiếp viết các câu lệnh truy vấn SQL.
Ý nghĩa của việc chuyển từ "Mô hình ER" sang "Sơ đồ ER (ERD)" là gì?
ERD là một phiên bản lỗi thời của Mô hình ER.
Mô hình ER là ý tưởng trừu tượng, còn ERD là cách biểu diễn cụ thể, dễ hiểu của ý tưởng đó.
Chỉ có thể vẽ ERD sau khi đã xây dựng xong CSDL.
Mô hình ER và ERD là hai khái niệm hoàn toàn không liên quan.
Một hệ thống thương mại điện tử cần phân tích hành vi khách hàng để đưa ra chiến lược kinh doanh. Vai trò này của CSDL thuộc loại xử lý nào?
Online Transaction Processing (OLTP)
Online Analytical Processing (OLAP)
Real-time Data Processing (RTDP)
Social Media Data Storage (SMDS)
Nếu muốn tìm ra năm sinh trung bình của các kiến trúc sư, nhưng loại trừ những người chưa khai báo năm sinh, hàm nào sau đây sẽ được sử dụng?
SUM(birthday) / COUNT(id)
AVG(birthday)
MEDIAN(birthday)
AVG(id)
Để xóa toàn bộ dữ liệu trong một bảng Logs rất lớn một cách nhanh chóng nhất và không cần khả năng hoàn tác, đồng thời giữ lại cấu trúc bảng, lệnh nào là tối ưu nhất?
DELETE FROM Logs;
DROP TABLE Logs;
TRUNCATE TABLE Logs;
ALTER TABLE Logs EMPTY;
Sự khác biệt cơ bản giữa ALTER TABLE ... MODIFY COLUMN và ALTER TABLE ... CHANGE COLUMN theo mô tả là gì?
MODIFY có thể đổi tên cột, CHANGE thì không.
CHANGE có thể đổi cả tên và định nghĩa cột, trong khi MODIFY chỉ sửa đổi định nghĩa.
MODIFY nhanh hơn CHANGE.
Chúng hoàn toàn giống nhau về chức năng.
Trong quy trình thiết kế CSDL, tại sao bước "Thu thập thông tin và phân tích yêu cầu" được coi là bước nền tảng?
Vì nó quyết định công nghệ CSDL nào sẽ được sử dụng.
Vì nếu không hiểu rõ yêu cầu, bản thiết kế CSDL sẽ không đáp ứng được mục tiêu của người dùng cuối.
Kỹ thuật tạo "bảng trung gian (junction table)" được áp dụng để giải quyết vấn đề cố hữu của loại mối quan hệ nào trong CSDL quan hệ?
Một - Một (1:1)
Một - Nhiều (1:N)
Nhiều - Nhiều (M:N)
Phụ thuộc bắc cầu
Một "Hệ quản trị CSDL (DBMS)" đóng vai trò gì giữa người dùng và CSDL vật lý?
Là một lớp giao diện trung gian để tạo, quản lý và tương tác với dữ liệu.
Là chính dữ liệu được lưu trữ trên đĩa cứng.
Là một ngôn ngữ lập trình giống như Java hay Python.
Là một bảng tính như Microsoft Excel.
Một công ty cần lưu trữ mã nhân viên, có định dạng cố định là 'NV' theo sau là 4 chữ số (ví dụ: 'NV1234'). Kiểu dữ liệu nào là lựa chọn tối ưu nhất cho cột này?
VARCHAR(6)
TEXT
CHAR(6)
INT
Một ứng dụng cần lưu trữ thời gian cập nhật cuối cùng của một bản ghi và muốn nó tự động cập nhật mỗi khi bản ghi được sửa đổi. Kiểu dữ liệu nào là phù hợp nhất cho yêu cầu này?
DATETIME
DATE
TIMESTAMP
TIME
Một công ty khởi nghiệp đang xây dựng mạng xã hội, nơi cấu trúc của bài đăng có thể thay đổi liên tục (thêm polls, reactions...). Tại sao CSDL NoSQL lại phù hợp hơn SQL trong trường hợp này?
Vì NoSQL có tính nhất quán cao hơn (ACID).
Vì lược đồ (schema) của NoSQL linh hoạt, dễ dàng thích ứng với các yêu cầu mới mà không cần định nghĩa lại cấu trúc.
Vì NoSQL chỉ sử dụng ngôn ngữ truy vấn SQL duy nhất.
Vì NoSQL tối ưu hơn cho các hệ
Ràng buộc FOREIGN KEY thực thi quy tắc "toàn vẹn tham chiếu" bằng cách nào?
Đảm bảo tất cả giá trị trong cột khóa ngoại phải là duy nhất.
Đảm bảo giá trị trong cột khóa ngoại phải tồn tại trong cột khóa chính của bảng được tham chiếu.
Đảm bảo cột khóa ngoại không được chứa giá trị NULL.
Tự động tạo giá trị cho cột khóa ngoại.
Một cột Age trong bảng Users có ràng buộc CHECK (Age >= 18). Điều gì sẽ xảy ra nếu người dùng cố gắng thực hiện lệnh INSERT với giá trị Age là 17?
Dữ liệu sẽ được chèn thành công nhưng giá trị Age sẽ là NULL.
Dữ liệu sẽ được tự động sửa thành 18 và chèn vào bảng.
Thao tác INSERT sẽ thất bại và CSDL sẽ báo lỗi vi phạm ràng buộc CHECK.
Ràng buộc CHECK sẽ bị bỏ qua và dữ liệu được chèn thành công.
Thiết kế ở mức Logic (Logical Model) khác với thiết kế ở mức Trừu tượng (Conceptual Model) ở điểm nào?
Mức Logic không quan tâm đến các thực thể và mối quan hệ.
Mức Logic bổ sung các thuộc tính và khóa chính, nhưng vẫn độc lập với một hệ quản trị CSDL cụ thể.
Mức Logic chỉ định rõ kiểu dữ liệu như INT, VARCHAR và các ràng buộc vật lý.
Mức Trừu tượng chi tiết hơn mức Logic.
Tại sao thiết kế ở mức Vật lý (Physical Model) lại phụ thuộc vào một hệ quản trị CSDL cụ thể (ví dụ: MySQL, SQL Server)?
Vì các hệ quản trị CSDL khác nhau có thể có các kiểu dữ liệu và cú pháp ràng buộc khác nhau.
Vì mỗi hệ quản trị CSDL chỉ cho phép một loại mô hình vật lý duy nhất.
Vì mô hình vật lý chỉ bao gồm các thực thể và mối quan hệ cơ bản.
Vì mô
Dữ liệu JSON ({"name": "John", "age": 30}) được phân loại là loại dữ liệu gì và tại sao?
Có cấu trúc, vì nó tuân theo một lược đồ bảng nghiêm ngặt.
Phi cấu trúc, vì nó hoàn toàn không có định dạng.
Bán cấu trúc, vì nó không theo cấu trúc bảng nhưng chứa các "khóa" (keys) để tạo ra hệ thống phân cấp.
Dữ liệu quan hệ, vì nó có thể được lưu trực tiếp vào CSDL SQL.
Trong MySQL Workbench, tính năng nào hỗ trợ trực tiếp cho việc thiết kế CSDL ở mức Logic?
Trình soạn thảo SQL thông minh với tính năng gợi ý.
Công cụ quản lý người dùng và giám sát hiệu năng.
Công cụ thiết kế và trực quan hóa mô hình quan hệ thực thể (ERD).
Công cụ sao lưu và phục hồi dữ liệu.
Một câu lệnh SELECT trả về 100 hàng. Nếu áp dụng ORDER BY birthday DESC, hàng đầu tiên trong kết quả sẽ là gì?
Kiến trúc sư có năm sinh nhỏ nhất (trẻ nhất).
Kiến trúc sư có năm sinh lớn nhất (già nhất).
Kiến trúc sư có ID nhỏ nhất.
Một hàng ngẫu nhiên từ 100 hàng.
Dựa vào ví dụ về INSERT INTO architect VALUES (7, 'Trần Minh Dương', ...) mà không chỉ định cột, câu lệnh này sẽ thất bại nếu:
Bảng architect có ít hơn 7 cột.
Thứ tự các cột trong cấu trúc bảng architect bị thay đổi.
Giá trị 'Trần Minh Dương' chứa ký tự tiếng Việt.
ID 7 đã tồn tại và là khóa chính.
