50 câu hỏi phỏng vấn DB2 và câu trả lời hàng đầu (2025)
Dưới đây là những câu hỏi và câu trả lời phỏng vấn DB2 dành cho cả ứng viên mới và ứng viên có kinh nghiệm để có được công việc mơ ước của mình.
1) Định nghĩa DB2.
DB2 là Hệ thống quản lý cơ sở dữ liệu dành cho Hệ điều hành MVS, trong đó DB2 là hệ thống con của Hệ điều hành MVS.
2) Mục đích của việc sử dụng COMMIT là gì?
Các thay đổi dữ liệu có thể được thực hiện vĩnh viễn bằng cách sử dụng COMMIT. Nó cũng cho phép dữ liệu được truy cập bởi các ứng dụng khác có thể tham chiếu dữ liệu đã cam kết
Tải xuống PDF miễn phí: Câu hỏi và câu trả lời phỏng vấn DB2
3) Liệt kê các kiểu dữ liệu có sẵn.
Các kiểu dữ liệu có sẵn ở đây là:
1. SMALLINT 2. INTEGER 3. FLOAT 4. DECIMAL 5. CHAR 6. VARCHAR 7. DATE 8. TIME
4) Công dụng của DB2 Optimizer là gì?
- Nó xử lý SQL các câu lệnh.
- Nó giúp chọn đường dẫn truy cập
5) Định nghĩa SQLCA.
SQL Communication Area là một cấu trúc các biến, được cập nhật sau mỗi lần thực thi các câu lệnh SQL. Đối với một ứng dụng chứa các câu lệnh SQL có thể thực thi, chỉ cần một SQLCA. FORTRAN cần cung cấp nhiều hơn một SQLCA. Đối với Java, SQLCA không áp dụng được.
6) Định nghĩa ràng buộc CHECK.
Nó được chỉ định như một điều kiện hoặc tiêu chí để đảm bảo tính toàn vẹn của dữ liệu. Giá trị được chèn hoặc cập nhật vào bảng được kiểm tra bằng ràng buộc CHECK. Các ràng buộc CHECK được tạo trong quá trình tạo bảng.
7) Độ dài tối đa của SQLCA là bao nhiêu?
136 là độ dài tối đa của SQLCA.
8) Thảo luận về liên kết DB2?
Quá trình xây dựng đường dẫn truy cập đến bảng DB2 được gọi là bind. Bind sử dụng các Mô-đun Yêu cầu Cơ sở dữ liệu từ bước tiền biên dịch DB2 làm đầu vào và tạo ra một kế hoạch ứng dụng. Nó kiểm tra xác thực người dùng và xác thực các câu lệnh SQL trong DBRM.
9) Liệt kê ba loại khóa trang có thể được giữ.
- Dành riêng
- Cập nhật
- Chia sẻ.
10) Định nghĩa vùng đệm.
Nhóm bộ đệm là bộ lưu trữ chính được dành riêng, nhằm đáp ứng các yêu cầu đệm cho một hoặc nhiều không gian bảng hoặc chỉ mục. Nó có thể bao gồm 4K hoặc 32K trang.
11) Giải thích chức năng của Trình quản lý dữ liệu.
Cơ sở dữ liệu vật lý được quản lý bởi thành phần DB2 được gọi là Trình quản lý dữ liệu. Nó gọi các thành phần hệ thống khác để thực hiện ghi nhật ký, khóa, v.v.
12) Nhóm lưu trữ (STOGROUP) là gì?
STOGROUP là tập hợp được đặt tên của các ổ đĩa DASD, được sử dụng bởi các không gian chỉ mục và không gian bảng của cơ sở dữ liệu.
13) Định nghĩa vị ngữ?
Vị ngữ là một phần tử của điều kiện tìm kiếm. Nó thể hiện hoặc ngụ ý một điều kiện tìm kiếm.
14) Trình tạo khai báo định nghĩa (DCLGEN).
Declaration Generator là một tiện ích được sử dụng để tạo các câu lệnh SQL mô tả một bảng hoặc chế độ xem. Vào thời điểm biên dịch trước, các mô tả bảng hoặc chế độ xem sau đó được sử dụng để kiểm tra tính hợp lệ của các câu lệnh SQL.
15) Liệt kê các vùng đệm trong DB2
Có bốn nhóm bộ đệm trong DB2 và chúng là:
- BP0
- BP1
- BP2
- BP32
16) Định nghĩa chỉ số cụm.
Chỉ mục cụm là một loại chỉ mục xác định vị trí các hàng của bảng và xác định cách nhóm các hàng lại với nhau trong không gian bảng.
17) Đồng thời là gì?
Nhiều hơn một quy trình ứng dụng DB2 có thể truy cập cùng một dữ liệu cùng một lúc, được gọi là đồng thời. Tuy nhiên, có thể xảy ra các vấn đề như mất quyền truy cập cập nhật vào các lần đọc không lặp lại và dữ liệu chưa được cam kết.
18) Giải thích chức năng của trình quản lý dữ liệu?
Trình quản lý dữ liệu có thể được coi là một thành phần có khả năng quản lý các cơ sở dữ liệu hiện diện về mặt vật lý và có khả năng gọi các thành phần khác liên quan đến hệ thống để thực hiện các chức năng như ghi nhật ký, khóa và thực hiện các hoạt động I/O khác.
19) Giải thích về DBRM.
DBRM là viết tắt của Database Request Module và là một thành phần bên trong DB2, được tạo ra bởi trình biên dịch trước của DB2. Đây là một mô-đun bao gồm các câu lệnh nguồn SQL được trích xuất ra khỏi chương trình ứng dụng. DBRM tạo thành các đầu vào hữu ích trong quá trình liên kết.
20) Trang Định nghĩa dữ liệu.
Trang dữ liệu có thể được coi là một đơn vị có khả năng truy xuất dữ liệu từ cơ sở dữ liệu. Cơ sở dữ liệu mà dữ liệu có thể được truy xuất có dạng 4 kilobyte hoặc 32 kilobyte. Dạng dữ liệu được truy xuất phụ thuộc vào cách bảng được định nghĩa bên trong cơ sở dữ liệu. Trang dữ liệu cũng chứa thông tin liên quan đến danh mục hoặc người dùng là một phần của cơ sở dữ liệu.
21) Giải thích về RCT.
RCT được mở rộng thành Bảng Điều khiển – Tài nguyên và được định nghĩa trong vùng DB2/CICS. Đây là thành phần bao gồm các tính năng được thu thập thông qua các macro của DSNCRCT. RCT khớp với ID giao dịch của CICS, với ID ủy quyền của DB2. ID này cũng phải khớp với ID kế hoạch.
22) Làm thế nào để di chuyển không gian bảng sang một ổ đĩa DASD khác được phân bổ cho không gian bảng đó?
Tablespace mà bạn đang sử dụng chỉ được phân bổ cho STOGROUP, sau đó bạn có thể nhập lệnh ALTER STOGROUP để thêm cũng như xóa volume. REORG TABLESPACE và RECOVER TABLESPACE là các câu lệnh hữu ích trong việc tạo STOGROUP mới có thể trỏ đến volume mới. ALTER tablespace và REORG và RECOVER là các câu lệnh được sử dụng để thay đổi và khôi phục tablespace được phân bổ trong bộ nhớ.
23) Thông tin liên quan đến bảng SYSIBM.SYSLINKS là gì?
Đây là bảng chứa thông tin về các liên kết tồn tại giữa các bảng được tạo thông qua các ràng buộc tham chiếu.
24) Giải thích chi tiết về trình quản lý bộ đệm và chức năng của nó?
Trình quản lý bộ đệm có thể được coi là thành phần bên trong DB2 giúp truyền dữ liệu giữa môi trường ảo cũng như môi trường bên ngoài. Trình quản lý bộ đệm làm giảm số lượng các hoạt động đầu vào cũng như đầu ra vật lý thực sự được thực hiện bằng cách sử dụng các kỹ thuật đệm rất tinh vi.
25) Giải thích về tính ổn định của con trỏ?
Tính ổn định của con trỏ là thuộc tính cho DB2 biết rằng các giá trị của cơ sở dữ liệu được đọc bằng cách sử dụng ứng dụng này sẽ được bảo vệ trong khi dữ liệu được sử dụng.
26) Nêu lý do đáng tin cậy tại sao SELECT* không bao giờ được ưu tiên trong chương trình SQL đã được nhúng.
Có ba lý do chính khiến SELECT* không bao giờ được ưu tiên trong chương trình SQL nhúng. Đó là: –
- Trong trường hợp có sự thay đổi trong cấu trúc của bảng thì chương trình phải trải qua quá trình sửa đổi.
- Chương trình sẽ lấy tất cả các cột, bao gồm cả những cột có thể không được sử dụng.
- Trong trường hợp người dùng muốn quét chỉ mục thì điều đó sẽ không thể thực hiện được.
27) Giải thích các truy vấn phụ có liên quan.
Các truy vấn con có liên quan là các truy vấn trong đó truy vấn lồng nhau ở phía bên trong tham chiếu trực tiếp trở lại bảng của truy vấn bên ngoài. Đối với mỗi hàng đủ điều kiện, việc đánh giá truy vấn con có liên quan là bắt buộc.
28) Bình luận xem con trỏ có đóng trong quá trình COMMIT hay không.
Có. Con trỏ sẽ đóng trong quá trình COMMIT.
29) Trong một bảng SQL được nhúng, quy trình để truy xuất các hàng là một phần của bảng DB2 là gì?
Bạn có thể sử dụng câu lệnh SELECT của từng hàng hoặc một cách khác là sử dụng CURSOR.
30) Nêu cách tô sáng cũng như cách sử dụng CON TRỎ trong chương trình COBOL.
Cách tốt nhất để sử dụng CURSOR trong chương trình COBOL là sử dụng DECLARE CURSOR, có thể sử dụng trong hoạt động chia thủ tục hoặc trong bộ nhớ làm việc. Về cơ bản, điều này được thực hiện để làm nổi bật câu lệnh SELECT. Sau khi sử dụng DECLARE CURSOR, tiếp theo là OPEN, FETCH và cuối cùng là CLOSE.
31) Nếu CURSOR vẫn mở sau khi lệnh COMMIT được phát hành, thì thủ tục để CURSOR vẫn mở là gì?
Bên trong DECLARE CURSOR, có tùy chọn WITH HOLD, sẽ hữu ích trong trường hợp này. Mặc dù vậy, cần lưu ý rằng hàm WITH HOLD hoàn toàn không có tác dụng nếu xét đến các chương trình giả thông thường của CICS.
32) Giải thích về GÓI.
GÓI là các đơn vị bao gồm các mã thực thi dành cho các câu lệnh SQL cho một DBRM tương ứng.
33) Nêu bật tất cả các lợi ích đi kèm với GÓI.
Sau đây là những lợi ích đi kèm với GÓI.
- Tránh chi phí cho một bộ sưu tập lớn. Tốt hơn hết là nên chọn một bộ sưu tập nhỏ thay vì một bộ sưu tập lớn.
- Đảm bảo rằng bạn không phải tập hợp nhiều thành viên DBRM lại với nhau để thực hiện một kế hoạch cụ thể.
- Trong trường hợp bạn muốn thực hiện thay đổi trong chương trình và những thay đổi này cuối cùng dẫn đến lỗi, thì bạn có thể giảm độ phức tạp của phương án dự phòng với sự trợ giúp của PACKAGE.
- Trong quá trình liên kết và liên kết lại tự động của một kế hoạch cụ thể, hãy đảm bảo rằng toàn bộ giao dịch được đính kèm vào quy trình đó không khả dụng trong suốt quá trình đó.
34) Nêu định nghĩa của COBOL trong trường VARCHAR.
NHẬN XÉT của cột VARCHAR như sau: –
10 REMARKS 49 REMARKS – LEN PIC S9 (4) USAGE COMP. 49 REMARKS – TEXT PIC X (1920).
35) Nêu độ dài lưu trữ vật lý của các kiểu dữ liệu đã cho của DB2 –
NGÀY, DẤU THỜI GIAN, THỜI GIAN
DATE: PIC X (10) TIMESTAMP: PIC X (26) TIME: PIC X (08)
36) Đối với cột DB2 được định nghĩa là DECIMAL (11, 2), hãy thảo luận về mệnh đề hình ảnh COBOL.
PIC S9 (9) V99 COMP – 3
Trong biểu thức DECIMAL (11, 2), 2 là độ chính xác trong khi 11 là kích thước kiểu dữ liệu.
37) Giải thích DCLGEN.
DCLGEN về cơ bản đề cập đến DeCLarations GENerator có mục đích chính là tạo ra các bản sao sách của ngôn ngữ lưu trữ cho các bảng. Nó cũng được sử dụng để tạo bảng DECLARE.
38) Nêu một số trường là một phần của SQLCA.
SQLERRM, SQLCODE, SQLERRD.
39) Giải thích những nội dung có trong DCLGEN.
Về cơ bản có hai thành phần của DCLGEN. Đó là: –
- Một bản sao của ngôn ngữ chủ, trong đó sẽ đưa ra các định nghĩa thay thế cho tất cả tên cột.
- Xét về kiểu dữ liệu của DB2, EXEC SQL DECLARE TABLE cho thấy bố cục thẩm mỹ của bảng.
40) Bình luận xem DCLGEN có bắt buộc phải sử dụng không. Nếu không thì mục đích sử dụng nó là gì?
Không hẳn là bắt buộc phải đưa DCLGEN vào sử dụng. Công dụng chính của DCLGEN là trong giai đoạn tiền biên dịch, khi nó giúp phát hiện tên cột viết sai chính tả. Vì DCLGEN chỉ là một công cụ, nó sẽ chỉ tạo ra các định nghĩa biến cho máy chủ và giảm khả năng xảy ra lỗi.
41) Trong trường hợp DB2 ngừng hoạt động tại một thời điểm nào đó, điều đó có ảnh hưởng đến quá trình biên dịch trước của chương trình DB2-COBOL không?
Ngay cả khi DB2 ngừng hoạt động tại một thời điểm nào đó, thì nó cũng không ảnh hưởng đến quá trình biên dịch trước của chương trình DB2-COBOL. Lý do là trình biên dịch trước không bao giờ tham chiếu đến các bảng danh mục của DB2.
42) Sau câu lệnh cập nhật DB2, cách nhanh nhất để tính tổng số hàng được cập nhật là gì?
Tất cả những gì bạn phải làm là kiểm tra giá trị đã được lưu trữ trong SQLERRD (3).
43) EXPLAIN có nghĩa là gì?
EXPLAIN về cơ bản được sử dụng để hiển thị đường dẫn truy cập của trình tối ưu hóa về cơ bản cho một câu lệnh SQL. Hơn nữa, EXPLAIN cũng có thể được sử dụng trong SPUFI hoặc thậm chí trong bước BIND.
44) Trước khi đưa ra câu lệnh GIẢI THÍCH, bạn có những quyền hạn nào?
Trước khi đưa ra câu lệnh EXPLAIN, chúng ta cần đảm bảo rằng PLAN_TABLE đã được tạo trong AUTHID.
45) Nêu vị trí lưu trữ kết quả nhận được từ câu lệnh EXPLAIN.
Đầu ra từ EXPLAIN được lưu trữ trong userid.PLAN_TABLE
46) Đầu ra của EXPLAIN có MATCHCOLS = 0. Điều này có ý nghĩa gì?
Điều này biểu thị một lần quét không khớp của chỉ mục với điều kiện là ACCESSTYPE = I
47) Hãy nêu các loại khóa khác nhau có trong DB2.
ĐỘC QUYỀN, CHIA SẺ và CẬP NHẬT
48) RELEASE/ACQUIRE trong BIND là gì?
Có một điểm nhất định trong chương trình mà DB2 có được hoặc có thể giải phóng các khóa đối với các bảng cũng như không gian bảng. Chúng bao gồm các khóa ý định.
49) Nêu các mức khóa khác nhau có trong DB2.
BẢNG, TRANG và KHÔNG GIAN BẢNG
50) Nêu nhược điểm của khóa cấp độ PAGE.
Trong trường hợp có nhiều bản cập nhật lớn cần thực hiện thì việc sử dụng tài nguyên cũng sẽ cao tương ứng.
Những câu hỏi phỏng vấn này cũng sẽ giúp ích cho bài thi viva(orals) của bạn
Giá như tôi có thể nhớ được tất cả những câu hỏi này trong một cuộc phỏng vấn…