Thao tác câu hỏi dữ liệu

1.What does ACID mean with respect to relational database?

  1. Độ chính xác, nhất quán, cô lập, cơ sở dữ liệu
  2. Độ chính xác, Đồng thời, Cô lập, Độ bền
  3. Tính nguyên tử, tính nhất quán, tính cô lập, độ bền
  4. Tính nguyên tử, Đồng tiền, Cô lập, Độ bền

Answer: C. Tất cả các giao dịch Oracle tuân thủ các thuộc tính cơ bản của một giao dịch cơ sở dữ liệu, được gọi là thuộc tính ACID. Tính nguyên tử nói rằng tất cả các nhiệm vụ của một giao dịch được thực hiện hoặc không có nhiệm vụ nào trong số chúng. Không có giao dịch từng phần. Tính nhất quán ngụ ý giao dịch đưa cơ sở dữ liệu từ trạng thái nhất quán này sang trạng thái nhất quán khác. Cô lập có nghĩa là ảnh hưởng của một giao dịch không thể nhìn thấy đối với các giao dịch khác cho đến khi giao dịch được cam kết. Độ bền có nghĩa là các thay đổi được thực hiện bởi các giao dịch đã cam kết là vĩnh viễn. Sau khi giao dịch hoàn tất, cơ sở dữ liệu đảm bảo thông qua các cơ chế phục hồi của nó, các thay đổi từ giao dịch không bị mất.

2. What does the word DML stands for in Oracle SQL?

  1. Ngôn ngữ quản lý độ bền
  2. Ngôn ngữ quản lý cơ sở dữ liệu
  3. Ngôn ngữ thao tác cơ sở dữ liệu
  4. Không có cái nào ở trên

Answer: C. DML là viết tắt của Data Manipulation Language.

3. Which of the following are DML commands in Oracle Database?

  1. SELECT
  2. NHÓM THEO
  3. INTERSECT
  4. INSERT

Answer: A, D. Trên cơ sở nghiêm ngặt, SELECT là một lệnh DML vì nó là một trong những mệnh đề bắt buộc để thao tác với dữ liệu có trong bảng.

4.Which of the following DML commands can be considered to be a hybrid of INSERT and UPDATE in a single statement?

  1. INTERSECT
  2. INSERT
  3. SELECT
  4. MERGE

Answer: D. MERGE có thể thực hiện các hành động INSERT và UPDATE trong một câu lệnh duy nhất trong Oracle.

5. What all operations can MERGE statement perform in SQL?

  1. INSERT
  2. DELETE
  3. NHÓM THEO
  4. Không có cái nào ở trên

Answer: A, B. Trong một số điều kiện, MERGE cũng có thể thực hiện thao tác DELETE, cùng với INSERT và UPDATE.

6.Which of following commands is a DDL (Data Definition Language) command but is often considered along with DML commands?

  1. DELETE
  2. INSERT
  3. TRUNCATE
  4. Không có cái nào ở trên

Answer: C. TRUNCATE là một lệnh DDL. Nó loại bỏ các bản ghi khỏi bảng mà không có bất kỳ điều kiện nào. Nó không phải là một phần của bất kỳ giao dịch đang diễn ra nào và một giao dịch không được cam kết trong phiên được cam kết sau khi TRUNCATE được thực hiện.

7.Which of the following commands manipulate data basically?

  1. MINUS
  2. UPDATE
  3. TRUNCATE
  4. Tất cả những điều trên

Answer: B, C. UPDATE là một câu lệnh DML để sửa đổi giá trị cột trong bảng. TRUNCATE thao tác dữ liệu bằng cách xóa chúng vô điều kiện khỏi bảng.

8. Which of the following commands is used to populate table rows with data?

  1. DELETE
  2. INSERT
  3. SELECT
  4. UPDATE

Answer: B. Lệnh INSERT dùng để chèn các hàng trong bảng.

9. What is true about the INSERT statement? (Choose the most appropriate answer)

  1. Nó có thể chèn dữ liệu vào một hàng của một bảng tại một thời điểm
  2. Nó có thể chèn dữ liệu vào nhiều hàng của một bảng cùng một lúc
  3. Nó có thể chèn dữ liệu vào nhiều hàng của nhiều bảng cùng một lúc
  4. Tất cả những điều trên

Answer: C. Câu lệnh INSERT có khả năng chèn một hàng hoặc một tập hợp các hàng trong một bảng tại một thời điểm.

10.What is true about the insertion of rows in tables?

  1. Các hàng có thể được chèn ngẫu nhiên
  2. Có thể chèn bất kỳ số hàng nào vào bảng mà không có bất kỳ hạn chế nào
  3. Nói chung, các hàng được chèn vào một bảng dựa trên các quy tắc nhất định được gọi là các ràng buộc
  4. Tất cả những điều trên

Answer: C. Ràng buộc là các quy tắc nghiệp vụ được áp đặt trên các cột để đảm bảo hoạt động của dữ liệu đến trong cột. Các ràng buộc này được xác thực cho dữ liệu trong quá trình INSERT.

11. What is true about the INSERT statement in Oracle SQL? (Choose the most appropriate answer)

  1. Một câu lệnh INSERT có thể ghi đè lên bất kỳ ràng buộc nào được đặt trên bảng
  2. Một câu lệnh INSERT không thể được sử dụng trên một bảng nếu một ràng buộc đã được đặt trên bảng
  3. Một câu lệnh INSERT chỉ có thể được sử dụng trên một bảng nếu một ràng buộc đã được đặt trên bảng
  4. Một câu lệnh INSERT không bao giờ có thể chèn một hàng vi phạm một ràng buộc.

Answer: D. Oracle đưa ra ngoại lệ nếu bất kỳ dữ liệu nào trong câu lệnh chèn vi phạm ràng buộc.

Consider the following data set from the EMPLOYEES table along with its structure and answer the questions 12, 13 and 14:

SQL> DESC employees
 Name			 Null?	  Type
 ----------------------- -------- ----------------
 EMPLOYEE_ID		 NOT NULL NUMBER (6)
 FIRST_NAME			  VARCHAR2 (20)
 LAST_NAME		 NOT NULL VARCHAR2 (25)
 EMAIL			 NOT NULL VARCHAR2 (25)
 PHONE_NUMBER			  VARCHAR2 (20)
 HIRE_DATE		 NOT NULL DATE
 JOB_ID 		 NOT NULL VARCHAR2 (10)
 SALARY 			  NUMBER (8,2)
 COMMISSION_PCT 		  NUMBER(2,2)
 MANAGER_ID			  NUMBER(6)
 DEPARTMENT_ID			  NUMBER(4)
EMPLOYEE_ID FIRST_NAME   JOB_ID 
------------------- ------------------ --------
5100 	             BRUCE             CLERK
5101 	             JESSICA           SALESMAN
5102 	             DEBBY             SALESMAN

12. Examine the structure of the EMPLOYEES table. You issue the following command:

INSERT INTO EMPLOYEES (employee_id  , first_name , job_id) VALUES (5100, 'BRUCE', 'CLERK');

Giả sử rằng có một ràng buộc kiểm tra giá trị trùng lặp trên cột EMPLOYEE_ID, kết quả của câu lệnh trên sẽ như thế nào?

  1. Nó sẽ chèn một hàng khác với 5100 giá trị BRUCE CLERK
  2. Nó sẽ chèn một hàng khác với 51002 giá trị BRUCE CLERK
  3. Nó sẽ xuất hiện lỗi ORA 'Vi phạm ràng buộc'
  4. Không có cái nào ở trên

Answer: C. Vì hàng có giá trị "5100, BRUCE, CLERK" đã tồn tại trong bảng nên không thể thực hiện câu lệnh chèn với cùng một tập dữ liệu.

13.You issue the following command to the data set shown above:

INSERT INTO EMPLOYEES (employee_id  , first_name , job_id) VALUES (51003,'BRUCE','CLERK');

Kết quả đầu ra của câu lệnh này là gì?

  1. Nó sẽ chèn một hàng mới với 51003 giá trị BRUCE CLERK
  2. Nó sẽ gây ra lỗi ORA vì không thể có một BRUCE khác là CLERK
  3. Nó sẽ xuất hiện lỗi ORA 'Vi phạm ràng buộc'
  4. Không có cái nào ở trên

Answer: A. Vì không có ràng buộc nào đối với các cột FIRST_NAME và job_id, INSERT sẽ hoạt động mà không có bất kỳ lỗi nào

14. You issue the following command to the data set shown above:

INSERT INTO EMPLOYEES (employee_id  , first_name , job_id ) VALUES (51003,'BRUCE', NULL);

Kết quả đầu ra của câu lệnh này là gì?

  1. Nó sẽ chèn một hàng mới với 51003 giá trị BRUCE CLERK
  2. Nó sẽ gây ra lỗi ORA vì không thể có một BRUCE khác là CLERK
  3. Nó sẽ xuất hiện lỗi ORA 'Vi phạm ràng buộc'
  4. Nó sẽ chèn một hàng mới với 51003 giá trị BRUCE NULL

Answer: D. Vì không có ràng buộc NOT NULL trên cột FIRST_NAME và JOB_ID, giá trị NULL sẽ được chèn vào.

15. What among the following can be said regarding inserting of rows in tables?

  1. Người dùng không thể chèn hàng một cách tương tác
  2. Một truy vấn có thể được viết bằng các biến thay thế để người dùng chèn các hàng tương tác
  3. Khi người dùng được nhắc chèn hàng, chèn không hoạt động và nó gây ra lỗi ORA
  4. Không có cái nào ở trên

Answer: B. Câu lệnh INSERT có thể sử dụng biến thay thế để nhắc người dùng nhập các giá trị trong thời gian chạy. Nó cung cấp một cách tương tác để chèn dữ liệu vào bảng

16.Which of the following can be used to insert rows in tables?

  1. SELECT
  2. INSERT
  3. Sub-queries
  4. Tất cả những điều trên

Answer: D. Câu lệnh INSERT có thể sử dụng INSERT, INSERT-SELECT rõ ràng hoặc một phương thức truy vấn phụ để chèn dữ liệu vào bảng.

17. Which among the following is a common technique for inserting rows into a table? (Choose the most sensible and appropriate answer)

  1. Sử dụng mệnh đề SELECT
  2. Nhập thủ công từng giá trị vào mệnh đề INSERT
  3. Sử dụng toán tử SET
  4. Không có cái nào ở trên

Answer: A. Sử dụng mệnh đề SELECT là kỹ thuật phổ biến nhất để chèn hàng vào bảng. Nó làm giảm nỗ lực nhập các giá trị cho mỗi cột theo cách thủ công.

18.Which of the following commands is used to change the rows that already exist in a table?

  1. INSERT
  2. UNION
  3. UPDATE
  4. SELECT

Answer: C. UPDATE là một câu lệnh DML được sử dụng để sửa đổi các giá trị cột trong bảng.

19.What is true about the UPDATE command?

  1. Nó chỉ có thể cập nhật một hàng tại một thời điểm
  2. Nó chỉ có thể cập nhật 100 hàng cùng một lúc
  3. Nó có thể cập nhật hàng loạt không giới hạn cùng một lúc
  4. Không có cái nào ở trên

Answer: C. CẬP NHẬT có thể cập nhật nhiều hàng trong một hoặc nhiều hàng cùng một lúc dựa trên điều kiện mệnh đề WHERE.

20.Which of the following clauses decides how many rows are to be updated?

  1. SELECT
  2. WHERE
  3. FROM
  4. Tất cả những điều trên

Answer: B. Câu lệnh UPDATE sử dụng mệnh đề WHERE để nắm bắt tập hợp các hàng cần được cập nhật.

21.What among the following is true about the UPDATE statement? (Choose the most appropriate answer)

  1. UPDATE chỉ có thể cập nhật các hàng từ một bảng
  2. UPDATE có thể cập nhật các hàng từ nhiều bảng
  3. Một lệnh UPDATE đơn không thể ảnh hưởng đến các hàng trong nhiều bảng
  4. Không có cái nào ở trên

Answer: A, C. Câu lệnh UPDATE ảnh hưởng đến các hàng chỉ của một bảng chứ không phải nhiều bảng.

Consider the following data set from the EMPLOYEES table and its structure. Answer questions 22 to 24 that follow.

SQL> DESC employees
 Name			 Null?	  Type
 ----------------------- -------- ----------------
 EMPLOYEE_ID		 NOT NULL NUMBER(6)
 FIRST_NAME			  VARCHAR2(20)
 LAST_NAME		 NOT NULL VARCHAR2(25)
 EMAIL			 NOT NULL VARCHAR2(25)
 PHONE_NUMBER			  VARCHAR2(20)
 HIRE_DATE		 NOT NULL DATE
 JOB_ID 		 NOT NULL VARCHAR2(10)
 SALARY 			  NUMBER(8,2)
 COMMISSION_PCT 		  NUMBER(2,2)
 MANAGER_ID			  NUMBER(6)
 DEPARTMENT_ID			  NUMBER(4)
EMPLOYEE_ID FIRST_NAME   JOB_ID 
------------------- ------------------ --------
5100 	             BRUCE             CLERK
5101 	             JESSICA           SALESMAN
5102 	             DEBBY             SALESMAN

22. You need to change the JOB_ID for Bruce (Employee Id 7389) to 'ACCOUNTANT'. Which of the following statements will you fire?

  1. UPDATE employees
    SET job_id  = 'ACCOUNTANT'
    WHERE employee_id   = 7389;
  2. INSERT INTO EMPLOYEES (employee_id  , first_name , job_id ) VALUES (5100,'BRUCE', 'ACCOUNTANT');
  3. UPDATE employees
    SET job_id  = 'ACCOUNTANT'
    WHERE job_id  = 'CLERK';
  4. UPDATE employees
    SET job_id  = 'ACCOUNTANT';

Answer: A. Tùy chọn B không thành công vì nó sửa đổi mã công việc của tất cả các nhân viên thành ACCOUNTANT. Phương án C sai vì nó cập nhật mã công việc thành KẾ TOÁN cho tất cả nhân viên trong bảng.

Answer the following questions 23 and 24 based on the below actions -

Bạn đưa ra truy vấn sau cho bảng NHÂN VIÊN với tập dữ liệu như hình trên.

UPDATE employees
Set job_id  = NULL
Where employee_id   = 51000;

Tập dữ liệu sẽ như hình dưới đây: (Giả sử rằng có một ràng buộc giá trị trùng lặp trên cột EMPLOYEE_ID)

EMPLOYEE_ID FIRST_NAME   JOB_ID 
------------------- ------------------ --------
5100 	             BRUCE             
5101 	             JESSICA           SALESMAN
5102 	             DEBBY             SALESMAN

23. Suppose you fire an UPDATE statement to update Bruce's JOB_ID to 'SALESMAN' (with respect to the data set shown above). What will be the outcome of the query?

  1. Mã công việc của Bruce sẽ vẫn là NULL
  2. Mã công việc của Bruce sẽ được sửa đổi thành 'SALESMAN'
  3. Lỗi ORA
  4. Không có hành động

Answer: B. UPDATE sẽ thêm giá trị mới vào giá trị NULL thay đổi NULL thành giá trị mới

24. You issue an UPDATE statement to update the employee id 7389 to 7900. You query the employee by its id '7389' before committing the transaction. What will be the outcome?

  1. Cập nhật sẽ hoạt động thành công trong khi lựa chọn sẽ hiển thị 7389.
  2. Cập nhật sẽ hoạt động thành công trong khi lựa chọn sẽ không hiển thị bản ghi.
  3. Ràng buộc trên EMPLOYEE_ID sẽ không cho phép nó được cập nhật
  4. Nó sẽ cập nhật thành công nhưng tất cả các giá trị cho EMPLOYEE_ID 7389 sẽ trở thành NULL.

Answer: B. Một truy vấn trong một phiên phù hợp với các giao dịch đang diễn ra. Nếu cùng một truy vấn đã được thực hiện trong một phiên khác, nó sẽ hiển thị bản ghi nhân viên với id 7389 vì giao dịch hoạt động trong phiên đầu tiên chưa được cam kết.

25. What among the following is a typical use of an UPDATE statement? (Select the most appropriate answer)

  1. Để truy xuất một hàng và cập nhật một trong các cột khác của hàng đó
  2. Để sửa đổi tất cả các hàng cho một số cột
  3. Để sửa đổi tất cả các hàng cho tất cả các cột của bảng
  4. Không có cái nào ở trên

Answer: A. Mặc dù, câu lệnh UPDATE có thể sửa đổi tất cả các giá trị cột trong tất cả các hàng, nhưng thông thường nó được sử dụng để chọn một hàng và cập nhật một hoặc nhiều cột.

26. Which of the following practices appropriately describe for selecting which row set to update using the UPDATE statement?

  1. Nếu một số hàng cần được cập nhật, có thể sử dụng ràng buộc CHÍNH CHÍNH
  2. Nếu tất cả các hàng được cập nhật, mệnh đề WHERE có thể được coi là
  3. Để cập nhật một tập hợp các hàng, hãy sử dụng WHERE, để cập nhật tất cả các hàng của một bảng, hãy đặt một ràng buộc CHÍNH CHÍNH trên bảng
  4. Không có cái nào ở trên

Answer: C.

27. Which of the following columns in a table are not usually updated?

  1. Cột loại DÀI trong bảng
  2. Cột LOB trong bảng
  3. Một cột khóa chính cũng đóng vai trò là tham chiếu khóa ngoại trong bảng khác
  4. Tất cả những điều trên

Answer: C. Theo thông lệ, các cột khóa chính đóng vai trò là tham chiếu khóa ngoại trong các bảng khác sẽ không được cập nhật. Mặc dù chúng có thể được cập nhật bằng cách trì hoãn các ràng buộc thường không được khuyến khích.

Consider the following data set and structure of the EMPLOYEES table and answer the questions 28 and 29 that follow:

SQL> DESC employees
 Name			 Null?	  Type
 ----------------------- -------- ----------------
 EMPLOYEE_ID		 NOT NULL NUMBER(6)
 FIRST_NAME			  VARCHAR2(20)
 LAST_NAME		 NOT NULL VARCHAR2(25)
 EMAIL			 NOT NULL VARCHAR2(25)
 PHONE_NUMBER			  VARCHAR2(20)
 HIRE_DATE		 NOT NULL DATE
 JOB_ID 		 NOT NULL VARCHAR2(10)
 SALARY 			  NUMBER(8,2)
 COMMISSION_PCT 		  NUMBER(2,2)
 MANAGER_ID			  NUMBER(6)
 DEPARTMENT_ID			  NUMBER(4)
EMPLOYEE_ID FIRST_NAME   JOB_ID 
------------------- ------------------ --------
5100 	             BRUCE             NULL
5101 	             JESSICA           SALESMAN
5102 	             DEBBY             SALESMAN

28. You issue an UPDATE statement as follows:

UPDATE employees 
SET job_id  = NULL;

Kết quả của câu nói trên sẽ như thế nào?

  1. Hàng đầu tiên của tập dữ liệu sẽ được cập nhật thành NULL
  2. Cột thứ 3 của hàng đầu tiên sẽ được cập nhật thành NULL
  3. Cột thứ 3 của tất cả các hàng sẽ được cập nhật thành NULL
  4. Và lỗi ORA sẽ được ném ra

Answer: C. Câu lệnh UPDATE không có mệnh đề WHERE sẽ cập nhật tất cả các hàng của bảng.

29. You issue an UPDATE statement as follows:

UPDATE employees 
SET employee_id   = NULL;
WHERE job_id  = 'CLERK';

Kết quả của câu nói trên sẽ như thế nào? (Ở đây cột EMPLOYEE_ID được đánh dấu là bắt buộc bằng cách đặt một ràng buộc)

  1. Cột đầu tiên của tập dữ liệu sẽ được cập nhật thành NULL
  2. Cột thứ 3 của hàng đầu tiên sẽ được cập nhật thành NULL
  3. Cột thứ 3 của tất cả các hàng sẽ được cập nhật thành NULL
  4. Và lỗi ORA sẽ được ném ra

Answer: D. Các ràng buộc trên cột phải được tuân theo trong khi cập nhật giá trị của nó. Trong câu lệnh UPDATE đã cho, lỗi sẽ được đưa ra vì cột EMPLOYEE_ID là khóa chính trong bảng EMPLOYEES có nghĩa là cột này không thể là NULL.

30. Which of the following commands can be used to remove existing records from a table?

  1. UPDATE
  2. INSERT
  3. MINUS
  4. DELETE

Answer: D. DELETE được sử dụng để xóa các bản ghi khỏi bảng có thể được tùy chọn dựa trên một điều kiện. Là một câu lệnh DML, nó là một phần của giao dịch.

31. What among the following is true about the DELETE statement?

  1. Câu lệnh DELETE phải đi kèm với mệnh đề WHERE
  2. Không bắt buộc phải viết mệnh đề WHERE với câu lệnh DELETE
  3. DELETE có thể xóa dữ liệu khỏi nhiều bảng cùng một lúc
  4. Không có cái nào ở trên

Answer: B. Vị từ mệnh đề WHERE là tùy chọn trong câu lệnh DELETE. Nếu mệnh đề WHERE bị bỏ qua, tất cả các hàng của bảng sẽ bị xóa.

32.What among the following happens when we issue a DELETE statement on a table? (Choose the most appropriate answer)

  1. Một lời nhắc bật lên hỏi người dùng liệu họ có chắc chắn xóa các hàng được yêu cầu hay không
  2. Các hàng tuân theo điều kiện đưa ra trong câu lệnh DELETE sẽ bị xóa ngay lập tức
  3. Các hàng được yêu cầu được xóa ngay lập tức mà không cần bất kỳ lời nhắc nào.
  4. Không có cái nào ở trên

Answer: C. Là một phần của giao dịch đang hoạt động hoặc giao dịch mới, các hàng trong bảng sẽ bị xóa.

33.Consider the following data set from the EMPLOYEES table and its structure:

SQL> DESC employees
 Name			 Null?	  Type
 ----------------------- -------- ----------------
 EMPLOYEE_ID		 NOT NULL NUMBER(6)
 FIRST_NAME			  VARCHAR2(20)
 LAST_NAME		 NOT NULL VARCHAR2(25)
 EMAIL			 NOT NULL VARCHAR2(25)
 PHONE_NUMBER			  VARCHAR2(20)
 HIRE_DATE		 NOT NULL DATE
 JOB_ID 		 NOT NULL VARCHAR2(10)
 SALARY 			  NUMBER(8,2)
 COMMISSION_PCT 		  NUMBER(2,2)
 MANAGER_ID			  NUMBER(6)
 DEPARTMENT_ID			  NUMBER(4)
EMPLOYEE_ID FIRST_NAME   JOB_ID 
------------------- ------------------ --------
5100 	             BRUCE             
5101 	             JESSICA           SALESMAN
5102 	             DEBBY             SALESMAN

Bạn cần xóa dữ liệu khỏi cột JOB_ID trong hàng có worker_id 51001. Truy vấn nào sau đây sẽ đúng?

  1. UPDATE employees
    SET job_id  = NULL
    WHERE employee_id   = 51001;
  2. DELETE job_id  FROM employees
    WHERE employee_id   = 51001;
  3. DELETE FROM employees;
  4. Không có cái nào ở trên

Answer: D. Bạn không thể xóa một giá trị cột cụ thể cho một hàng cụ thể bằng câu lệnh DELETE. Toàn bộ hàng sẽ bị xóa dựa trên các điều kiện đã cho. Các giá trị không mong muốn trong một cột có thể được cập nhật thành NULL. Phương án 'A' gần đúng nhưng không đúng trong ngữ cảnh của câu hỏi.

34. What is the difference between the UPSERT and MERGE statements?

  1. Không có sự khác biệt
  2. UPSERT là thuật ngữ mới nhất được áp dụng cho tuyên bố MERGE, đã trở nên lỗi thời
  3. UPSERT có thể thực hiện thao tác xóa mà MERGE không thể
  4. MERGE chỉ INSERT, UPDATE và DELETE, UPSERT chỉ UPDATE và INSERT

Answer: D. UPSERT là một tuyên bố lỗi thời và MERGE đã tiếp quản với các khả năng mới.

35. What is the difference between the MERGE command and the commands INSERT, UPDATE and DELETE?

  1. Câu lệnh MERGE tiêu tốn nhiều thời gian hơn so với mỗi thao tác (CHÈN, CẬP NHẬT, XÓA) được thực hiện riêng biệt
  2. MERGE đã lỗi thời sau Oracle 10g
  3. MERGE có thể thực hiện tất cả ba thao tác trên một bảng trong khi INSERT, UPDATE và DELETE thực hiện một thao tác tại một thời điểm.
  4. Không có điều nào ở trên.

Answer: C. Câu lệnh MERGE có thể nhúng cả ba thao tác trên bảng trong một câu lệnh duy nhất trong khi INSERT, UPDATE và DELETE thực hiện một thao tác tại một thời điểm.

36. Which of the following objects can be the data source in a MERGE statement?

  1. Một bảng chỉ
  2. Chỉ một truy vấn phụ
  3. Một bảng hoặc một truy vấn phụ
  4. Cả A hoặc B

Answer: C. MERGE hoạt động tốt với một bảng hoặc một truy vấn con.

37. What among the following is a TRUNCATE statement equivalent to? (Choose the most suitable answer)

  1. Đối với một tuyên bố DELETE
  2. Đến một tuyên bố CẬP NHẬT
  3. Câu lệnh DELETE không có mệnh đề WHERE
  4. Không có cái nào ở trên

Answer: C. TRUNCATE xóa tất cả các hàng trong một lệnh.

38.Which of the following situations indicate that a DML operation has taken place?

  1. Khi các hàng mới được thêm vào bảng
  2. Khi hai truy vấn được kết hợp
  3. Khi một bảng bị cắt ngắn
  4. Không có cái nào ở trên

Answer: A. Khi các hàng hiện có trong bảng được chèn, sửa đổi hoặc xóa khỏi bảng, nó được thực hiện thông qua một câu lệnh DML.

39.Which of the following best defines a transaction?

  1. Một giao dịch bao gồm các câu lệnh DDL trên lược đồ cơ sở dữ liệu
  2. Một giao dịch bao gồm COMMIT hoặc ROLLBACK trong một phiên cơ sở dữ liệu
  3. Một giao dịch bao gồm một tập hợp các câu lệnh DML hoặc một câu lệnh DDL hoặc DCL hoặc TCL để tạo thành một đơn vị công việc logic trong một phiên cơ sở dữ liệu
  4. Một giao dịch bao gồm tập hợp các câu lệnh DML và DDL trong các phiên khác nhau của cơ sở dữ liệu

Answer: C. Một giao dịch cơ sở dữ liệu bao gồm một hoặc nhiều câu lệnh DML để tạo thành một thay đổi nhất quán trong dữ liệu hoặc một câu lệnh DDL hoặc một lệnh DCL (GRANT hoặc REVOKE). Nó bắt đầu với câu lệnh DML đầu tiên và kết thúc bằng một lệnh DCL hoặc DDL hoặc TCL (COMMIT hoặc ROLLBACK). Lưu ý rằng các lệnh DDL và DCL giữ tính năng tự động cam kết.

40. What does a collection of DML statements that form a logical unit work known as?

  1. Thuộc tính ACID
  2. UNION
  3. ĐOÀN KẾT TẤT CẢ
  4. Transaction

Answer: D.

41.What happens when a DML statement in an active transaction encounters an error on execution?

  1. Các giao dịch hoàn chỉnh được khôi phục
  2. Các DML trong giao dịch loại trừ lẫn nhau và do đó có thể tiếp tục thực hiện
  3. Các DML khác trong các giao dịch bị gián đoạn và đợi cho đến khi lỗi được giải quyết
  4. Không có cái nào ở trên

Answer: A. Nếu bất kỳ câu lệnh DML nào trong một giao dịch đang hoạt động gặp lỗi, thì toàn bộ giao dịch sẽ kết thúc trong tình trạng khôi phục.

42.What is true about the keyword VALUES in INSERT statements?

  1. VALUES có thể thêm nhiều hàng cùng một lúc trong quá trình CHÈN
  2. VALUES chỉ có thể thêm 100 hàng cùng một lúc trong INSERT
  3. VALUES là bắt buộc phải được sử dụng nếu chúng ta sử dụng từ khóa INSERT
  4. VALUES chỉ thêm một hàng tại một thời điểm

Answer: D. Từ khóa VALUES chỉ được sử dụng khi các giá trị cột được chỉ định rõ ràng trong câu lệnh INSERT.

Consider the following statement and the table structure. Answer the questions 43 to 45 that follow:

SQL> DESC departments
 Name			 Null?	  Type
 ----------------------- -------- ----------------
 DEPARTMENT_ID		 NOT NULL NUMBER(4)
 DEPARTMENT_NAME	 NOT NULL VARCHAR2(30)
 MANAGER_ID			  NUMBER(6)
 LOCATION_ID			  NUMBER(4)
INSERT INTO departments (department_id , department_name , manager_id, location_id )
VALUES (100, 'Human Resources', 121, 1000);

43. How many rows will be inserted by the above statement?

  1. 0
  2. 2
  3. 3
  4. 1

Answer: D. Khi từ khóa VALUES được sử dụng, nó chỉ chèn một hàng tại một thời điểm.

44. In which order the values will get inserted with respect to the above INSERT statement?

  1. Location_id, manager_id, Department_name, Department_id
  2. Department_id, Department_name, manager_id, location_id
  3. Department_id, manager_id, Department_name, location_id
  4. Department_id, Department_name, location_id, manager_id

Answer: B. Nếu các cột được đề cập trong mệnh đề INSERT, từ khóa VALUES phải chứa các giá trị theo cùng một thứ tự

45. Suppose the above given statement is modified as below:

INSERT INTO departments VALUES (100, 'Human Resources', 121, 1000);

Kết quả của việc sửa đổi này sẽ như thế nào? Giả sử rằng bảng DEPARTMENTS có bốn cột, cụ thể là, Department_id, DEPARTMENT_NAME, MANAGER_ID và LOCATION_ID.

  1. Nó sẽ chèn giá trị vào tất cả các cột của bảng phòng ban với giả định rằng các giá trị cột được cung cấp theo cùng một trình tự với cột trong bảng
  2. Nó sẽ gây ra lỗi ORA vì tên cột không được đề cập rõ ràng
  3. Nó sẽ tạo ra một lỗi ORA vì mệnh đề VALUES được sử dụng sai trong INSERT
  4. Không có cái nào ở trên

Answer: A. Bao gồm tên cột trong câu lệnh INSERT là tùy chọn với điều kiện các giá trị phải tuân thủ số lượng và trình tự của các cột trong bảng.

46. What will be the outcome of the below INSERT statement? (Consider the table structure)

SQL> DESC employees
 Name			 Null?	  Type
 ----------------------- -------- ----------------
 EMPLOYEE_ID		 NOT NULL NUMBER(6)
 FIRST_NAME			  VARCHAR2(20)
 LAST_NAME		 NOT NULL VARCHAR2(25)
 EMAIL			 NOT NULL VARCHAR2(25)
 PHONE_NUMBER			  VARCHAR2(20)
 HIRE_DATE		 NOT NULL DATE
 JOB_ID 		 NOT NULL VARCHAR2(10)
 SALARY 			  NUMBER(8,2)
 COMMISSION_PCT 		  NUMBER(2,2)
 MANAGER_ID			  NUMBER(6)
 DEPARTMENT_ID			  NUMBER(4)
INSERT INTO EMPLOYEES (employee_id , hire_date) VALUES (210,"21-JUN-2013");
  1. Nó sẽ chỉ chèn worker_id và ngày tuyển dụng của nhân viên, để lại tất cả các cột khác là ô trống
  2. Nó sẽ chỉ chèn character_id
  3. Nó sẽ xuất hiện một lỗi ORA
  4. Không có cái nào ở trên

Answer: C. Định dạng chữ theo ngày tháng có lỗi. Nó phải được đặt trong dấu ngoặc kép đơn chứ không phải dấu ngoặc kép.

47.What will be the outcome of the below INSERT statement? (Consider the given table structure)

SQL> DESC employees
 Name			 Null?	  Type
 ----------------------- -------- ----------------
 EMPLOYEE_ID		 NOT NULL NUMBER(6)
 FIRST_NAME			  VARCHAR2(20)
 LAST_NAME		 NOT NULL VARCHAR2(25)
 EMAIL			 NOT NULL VARCHAR2(25)
 PHONE_NUMBER			  VARCHAR2(20)
 HIRE_DATE		 NOT NULL DATE
 JOB_ID 		 NOT NULL VARCHAR2(10)
 SALARY 			  NUMBER(8,2)
 COMMISSION_PCT 		  NUMBER(2,2)
 MANAGER_ID			  NUMBER(6)
 DEPARTMENT_ID			  NUMBER(4)
INSERT INTO EMPLOYEES (employee_id , first_name) VALUES (210,"Bryan");
  1. Nó sẽ chỉ chèn character_id và tên của Bryan, để lại tất cả các cột khác là khoảng trống
  2. Nó sẽ chỉ chèn tên
  3. Nó sẽ xuất hiện một lỗi ORA
  4. Không có cái nào ở trên

Answer: C. Định dạng chuỗi ký tự có lỗi. Nó phải được đặt trong dấu ngoặc kép đơn chứ không phải dấu ngoặc kép.

48. Suppose you need to insert the name O'Callaghan as the last name of the employees table. Which of the following queries will give you the required results? (Consider the given table structure)

SQL> DESC employees
 Name			 Null?	  Type
 ----------------------- -------- ----------------
 EMPLOYEE_ID		 NOT NULL NUMBER(6)
 FIRST_NAME			  VARCHAR2(20)
 LAST_NAME		 NOT NULL VARCHAR2(25)
 EMAIL			 NOT NULL VARCHAR2(25)
 PHONE_NUMBER			  VARCHAR2(20)
 HIRE_DATE		 NOT NULL DATE
 JOB_ID 		 NOT NULL VARCHAR2(10)
 SALARY 			  NUMBER(8,2)
 COMMISSION_PCT 		  NUMBER(2,2)
 MANAGER_ID			  NUMBER(6)
 DEPARTMENT_ID			  NUMBER(4)
  1. INSERT INTO EMPLOYEES (employee_id , last_name) VALUES (210,'O'callahan');
  2. INSERT INTO EMPLOYEES (employee_id , last_name) VALUES (210,'O"callahan');
  3. INSERT INTO EMPLOYEES (employee_id , last_name) VALUES (210,'O' 'Callahan');
  4. INSERT INTO EMPLOYEES (employee_id , last_name) VALUES (210,"O'callahan");

Answer: C.

49. What will be the outcome of the below INSERT statement? (Consider the given table structure)

SQL> DESC employees
 Name			 Null?	  Type
 ----------------------- -------- ----------------
 EMPLOYEE_ID		 NOT NULL NUMBER(6)
 FIRST_NAME			  VARCHAR2(20)
 LAST_NAME		 NOT NULL VARCHAR2(25)
 EMAIL			 NOT NULL VARCHAR2(25)
 PHONE_NUMBER			  VARCHAR2(20)
 HIRE_DATE		 NOT NULL DATE
 JOB_ID 		 NOT NULL VARCHAR2(10)
 SALARY 			  NUMBER(8,2)
 COMMISSION_PCT 		  NUMBER(2,2)
 MANAGER_ID			  NUMBER(6)
 DEPARTMENT_ID			  NUMBER(4)
INSERT INTO EMPLOYEES (employee_id , first_name) VALUES ("210",'Bryan');
  1. Nó sẽ xuất hiện một lỗi giá trị số
  2. Nó sẽ chỉ chèn character_id và tên của Bryan, để lại tất cả các cột khác là NULL
  3. Nó sẽ chỉ chèn character_id
  4. Không có cái nào ở trên

Answer: A. Giá trị số không được đặt trong dấu ngoặc kép.

50. What will be the outcome of the below INSERT statement? (Consider the given table structure)

SQL> DESC employees
 Name			 Null?	  Type
 ----------------------- -------- ----------------
 EMPLOYEE_ID		 NOT NULL NUMBER(6)
 FIRST_NAME			  VARCHAR2(20)
 LAST_NAME		 NOT NULL VARCHAR2(25)
 EMAIL			 NOT NULL VARCHAR2(25)
 PHONE_NUMBER			  VARCHAR2(20)
 HIRE_DATE		 NOT NULL DATE
 JOB_ID 		 NOT NULL VARCHAR2(10)
 SALARY 			  NUMBER(8,2)
 COMMISSION_PCT 		  NUMBER(2,2)
 MANAGER_ID			  NUMBER(6)
 DEPARTMENT_ID			  NUMBER(4)
INSERT INTO departments VALUES (200,'Accounts', NULL, NULL);
  1. Nó sẽ xuất hiện một lỗi ORA
  2. Nó sẽ thực thi thành công nhưng với các giá trị sai có thể bị chèn vào các cột
  3. Nó sẽ thực thi thành công
  4. Không có cái nào ở trên

Answer: C. NULL có thể được sử dụng trong mệnh đề VALUES để lấp đầy các giá trị cột theo cách khác.

51. What will be the outcome of the below INSERT statement? (Assume there is a NOT NULL constraint on the department_id column and consider the table structure given)

SQL> DESC departments
 Name			 Null?	  Type
 ----------------------- -------- ----------------
 DEPARTMENT_ID		 NOT NULL NUMBER(4)
 DEPARTMENT_NAME	 NOT NULL VARCHAR2(30)
 MANAGER_ID			  NUMBER(6)
 LOCATION_ID			  NUMBER(4)
INSERT INTO departments VALUES (NULL, 'Accounts', NULL);
  1. Nó sẽ xuất hiện một lỗi ORA
  2. Nó sẽ thực thi thành công nhưng với kết quả sai
  3. Nó sẽ thực thi thành công nhưng với kết quả chính xác
  4. Không có cái nào ở trên

Answer: A. Giá trị NULL không thể được chèn vào các cột không rỗng.

52. What will be the outcome of the below INSERT statement? (Assume there is a NOT NULL constraint on the department_id column and consider the given table structure)

SQL> DESC departments
 Name			 Null?	  Type
 ----------------------- -------- ----------------
 DEPARTMENT_ID		 NOT NULL NUMBER(4)
 DEPARTMENT_NAME	 NOT NULL VARCHAR2(30)
 MANAGER_ID			  NUMBER(6)
 LOCATION_ID			  NUMBER(4)
INSERT INTO departments VALUES (200, 34, NULL);
  1. Nó sẽ thực thi thành công nhưng với kết quả sai
  2. Nó sẽ xuất hiện một lỗi ORA
  3. Nó sẽ thực thi thành công nhưng với kết quả chính xác
  4. Không có cái nào ở trên

Answer: B. Kiểu dữ liệu của giá trị không khớp với kiểu dữ liệu của cột trong bảng.

53. Which of the following commands is used to save the changed data in a table permanently?

  1. ROLLBACK
  2. COMMIT
  3. INSERT
  4. UPDATE

Answer: B. Lệnh TCL COMMIT được sử dụng để kết thúc giao dịch đang hoạt động hiện tại trong một phiên bằng cách thực hiện tất cả các thay đổi dữ liệu đang chờ xử lý vĩnh viễn trong các bảng.

54. Which of the following commands allows undoing the changed data?

  1. ROLLBACK
  2. COMMIT
  3. INSERT
  4. UPDATE

Answer: A. Lệnh TCL ROLLBACK được sử dụng để kết thúc giao dịch đang hoạt động hiện tại trong một phiên bằng cách loại bỏ tất cả các thay đổi dữ liệu đang chờ xử lý.

55. Which of the following commands allows enabling markers in an active transaction?

  1. ROLLBACK
  2. COMMIT
  3. SAVEPOINT
  4. Không có cái nào ở trên

Answer: C. SAVEPOINT đánh dấu một điểm trong giao dịch chia giao dịch thành các phần nhỏ hơn.

56. Which of the following commands prevents other users from making changes to a table?

  1. ROLLBACK
  2. COMMIT
  3. BẢNG KHÓA
  4. SAVEPOINT

Answer: C.

57. What is true about an INSERT statement which tries to insert values into a virtual column? (Choose the most appropriate answer)

  1. Nó không thể chèn giá trị trong cột Ảo
  2. Nó có thể chèn các giá trị
  3. Nó tạo ra một lỗi ORA
  4. Tất cả những điều trên

Answer: A. Cột Ảo là cột luôn được tạo tự động dựa trên biểu thức dẫn xuất được xác định trong đặc tả cột. Người dùng không thể chèn giá trị của nó một cách rõ ràng.

58.Which of the following commands allows the user to insert multiple rows with a single statement?

  1. INSERT
  2. CHÈN TẤT CẢ
  3. ĐOÀN KẾT TẤT CẢ
  4. Không có cái nào ở trên

Answer: B. Các hoạt động chèn hàng loạt có thể được thực hiện bằng cách sử dụng CHÈN TẤT CẢ.

59. Which of the following is the syntax for inserting rows through a sub-query?

  1. INSERT INTO tablename [{column_name,..}]
    subquery;
  2. INSERT INTO tablename  VALUES [{column_name,..}]
    subquery;
  3. Cả A và B
  4. Không có cái nào ở trên

Answer: A.

Consider the following exhibit of the EMPLOYEES table and answer the questions 60 to 63 that follow:

SQL> DESC employees
 Name			 Null?	  Type
 ----------------------- -------- ----------------
 EMPLOYEE_ID		 NOT NULL NUMBER(6)
 FIRST_NAME			  VARCHAR2(20)
 LAST_NAME		 NOT NULL VARCHAR2(25)
 EMAIL			 NOT NULL VARCHAR2(25)
 PHONE_NUMBER			  VARCHAR2(20)
 HIRE_DATE		 NOT NULL DATE
 JOB_ID 		 NOT NULL VARCHAR2(10)
 SALARY 			  NUMBER(8,2)
 COMMISSION_PCT 		  NUMBER(2,2)
 MANAGER_ID			  NUMBER(6)
 DEPARTMENT_ID			  NUMBER(4)

60. Which of the following queries will execute successfully?

  1. UPDATE employees
    SET salary = salary + 1000
    WHERE to_char (hire_date, 'YYYY') > '2006';
  2. UPDATE employees
    SET salary = salary + 1000
    WHERE to_date (hire_date, 'YYYY') > '2006';
  3. UPDATE employees
    SET salary = salary + 1000
    WHERE hire_date > to_date (substr ('01-jan-200',8));
  4. UPDATE employees
    SET salary = salary + 1000
    WHERE hire_date in (to_date ('JUN 01 11', to_date ('JUL 01  11'));

Answer: A.

61.Due to structural reorganization in the organization, you are asked to update department IDs for all the employees to NULL before the final decision is made public. Only those records should be updated which have the JOB_ID as NULL. Which of the following queries will work?

  1. UPDATE employees
    SET department_id  = NULL
    Where job_id  = NULL;
  2. UPDATE employees
    SET department_id  = NULL
    Where job_id  = TO_NUMBER(NULL);
  3. UPDATE employees
    SET department_id  = NULL
    Where job_id  IS NULL;
  4. UPDATE employees
    SET department_id  = TO_NUMBER (' ', 9999)
    Where job_id  = TO_NUMBER(NULL);

Answer: C. Sử dụng toán tử IS NULL để kiểm tra giá trị cột cho giá trị rỗng.

62.You need to add a basic employee data into EMPLOYEES table. The basic data contains the last name as 'Bond' and department ID as 300. Which of the following statements will give the correct results?

  1. INSERT INTO employees (employee_id , last_name, department_id ) 
    (100,'Bond',
    (select department_id  from departments where department_id  = 300));
  2. INSERT INTO employees (employee_id , last_name, department_id ) 
    VALUES (100,'Bond',
    (select department_id  from departments where department_id  = 300));
  3. INSERT INTO employees (employee_id , last_name, department_id ) 
    VALUES ('100','Bond',300);
  4. Không có cái nào ở trên

Answer: B, C. Truy vấn phụ hoạt động trong các câu lệnh INSERT miễn là chúng trả về một giá trị vô hướng của kiểu dữ liệu phù hợp hoặc tương thích với cột mà chúng được sử dụng.

63. You fire the following query:

DELETE FROM EMPLOYEES;

Giả sử rằng không có giao dịch đang hoạt động nào trên bảng NHÂN VIÊN trong bất kỳ phiên nào, phát biểu nào sau đây là đúng?

  1. Nó loại bỏ tất cả các hàng và cấu trúc của bảng
  2. Nó loại bỏ tất cả các hàng có thể được cuộn lại
  3. Nó xóa vĩnh viễn tất cả các hàng
  4. Không có cái nào ở trên

Answer: B. Là một câu lệnh DML, các thay đổi dữ liệu do hoạt động DELETE chỉ được thực hiện vĩnh viễn sau khi COMMIT được phát hành trong phiên.

64.Consider the structure of the COUNTRY table as shown:

SQL> desc countries
 Name			 Null?	  Type
 ----------------------- -------- ----------------
 COUNTRY_ID		 NOT NULL CHAR(2)
 COUNTRY_NAME			  VARCHAR2(40)
 REGION_ID			  NUMBER

Bạn đưa ra các tuyên bố sau trong một phiên.

INSERT INTO COUNTRIES (1, 'Whales')
/
INSERT INTO COUNTRIES (2, 'England')
/
SAVEPOINT A;
UPDATE COUNTRIES
SET country_id= 100 where country_id= 1
/
SAVEPOINT B; 
DELETE FROM COUNTRIES where country_id= 2
/
COMMIT
/
DELETE FROM COUNTRIES where country_id= 100
/

Điều gì sẽ xảy ra khi lệnh ROLLBACK TO SAVEPOINT được phát hành cho phiên người dùng?

  1. Việc quay lại tạo ra lỗi
  2. Chỉ các câu lệnh DELETE được khôi phục
  3. Không có câu lệnh SQL nào được khôi phục
  4. Không có cái nào ở trên

Answer: A, C. Vì có hai điểm lưu - A và B, và lệnh ROLLBACK chỉ định dấu điểm lưu thực sự, nên Oracle ném lỗi.

65.If a user issues a DML command and exits the SQL Developer abruptly without a COMMIT or ROLLBACK, what will be the outcome? (Assume the session is not auto commit)

  1. CAM KẾT tự động
  2. ROLLBACK tự động
  3. Có thể là CAM KẾT hoặc ROLLBACK để kết thúc giao dịch
  4. Không có cái nào ở trên

Answer: B. Khi giao dịch bị gián đoạn do lỗi hệ thống, toàn bộ giao dịch sẽ tự động được khôi phục.

66. Which of the following commands / statements would end a transaction?

  1. COMMIT
  2. SELECT
  3. SAVEPOINT
  4. CREATE

Answer: A, D. Ngoài các lệnh TCL tức là COMMIT hoặc ROLLBACK, các lệnh DDL và các lệnh DCL có tính năng tự động cam kết. Giao dịch đang hoạt động sẽ được cam kết nếu câu lệnh DDL được thực hiện trong cùng một phiên.

67.When does a transaction complete?

  1. Khi một ROLLBACK được thực thi
  2. Khi một COMMIT được thực thi
  3. Khi TRUNCATE được thực thi
  4. Tất cả những điều trên

Answer: D. Giao dịch hoàn tất nếu lệnh TCL, DCL hoặc DDL được thực hiện trong phiên.

68. Examine the given table structures and consider the following query:

SQL> DESC employees
 Name			 Null?	  Type
 ----------------------- -------- ----------------
 EMPLOYEE_ID		 NOT NULL NUMBER(6)
 FIRST_NAME			  VARCHAR2(20)
 LAST_NAME		 NOT NULL VARCHAR2(25)
 EMAIL			 NOT NULL VARCHAR2(25)
 PHONE_NUMBER			  VARCHAR2(20)
 HIRE_DATE		 NOT NULL DATE
 JOB_ID 		 NOT NULL VARCHAR2(10)
 SALARY 			  NUMBER(8,2)
 COMMISSION_PCT 		  NUMBER(2,2)
 MANAGER_ID			  NUMBER(6)
 DEPARTMENT_ID			  NUMBER(4)
SQL> DESC departments
 Name			 Null?	  Type
 ----------------------- -------- ----------------
 DEPARTMENT_ID		 NOT NULL NUMBER(4)
 DEPARTMENT_NAME	 NOT NULL VARCHAR2(30)
 MANAGER_ID			  NUMBER(6)
 LOCATION_ID			  NUMBER(4)
INSERT INTO EMPLOYEES (department_id ) VALUES
(select department_id  FROM departments);

Kết quả của truy vấn trên sẽ là gì?

  1. Các cột trong bảng NHÂN VIÊN và bảng phòng ban không khớp
  2. Mệnh đề WHERE là bắt buộc phải được sử dụng trong một truy vấn phụ
  3. Từ khóa VALUES không thể được sử dụng với mệnh đề INSERT khi các truy vấn con được sử dụng
  4. Không có cái nào ở trên

Answer: C. Sử dụng sai từ khóa VALUES. Nó chỉ được sử dụng khi bạn có dữ liệu cột trong tay, dữ liệu này phải được chèn vào bảng.

69.Examine the given table structure and consider the following query:

SQL> DESC employees
 Name			 Null?	  Type
 ----------------------- -------- ----------------
 EMPLOYEE_ID		 NOT NULL NUMBER(6)
 FIRST_NAME			  VARCHAR2(20)
 LAST_NAME		 NOT NULL VARCHAR2(25)
 EMAIL			 NOT NULL VARCHAR2(25)
 PHONE_NUMBER			  VARCHAR2(20)
 HIRE_DATE		 NOT NULL DATE
 JOB_ID 		 NOT NULL VARCHAR2(10)
 SALARY 			  NUMBER(8,2)
 COMMISSION_PCT 		  NUMBER(2,2)
 MANAGER_ID			  NUMBER(6)
 DEPARTMENT_ID			  NUMBER(4)
SQL> desc job_history
 Name			 Null?	  Type
 ----------------------- -------- ----------------
 EMPLOYEE_ID		 NOT NULL NUMBER(6)
 START_DATE		 NOT NULL DATE
 END_DATE		 NOT NULL DATE
 JOB_ID 		 NOT NULL VARCHAR2(10)
 DEPARTMENT_ID			  NUMBER(4)
UPDATE (select employee_id , job_id  from employees)
SET hire_date = '01-JAN-13'
WHERE employee_id  = (select employee_id  FROM job_history);

Điều nào sau đây là đúng đối với truy vấn đã cho?

  1. Nó sẽ không thực thi vì chúng tôi không thể sử dụng hai bảng trong một câu lệnh cập nhật duy nhất
  2. Nó sẽ không thực thi vì UPDATE không thể sử dụng một truy vấn phụ
  3. Nó sẽ thực thi với các hạn chế trên cột được chỉ định
  4. Nó sẽ không thực thi vì truy vấn phụ được sử dụng trong mệnh đề WHERE

Answer: C.

70.What happens when a transaction is committed?

  1. Các thay đổi được thực hiện trong giao dịch được lưu cho một phiên người dùng cụ thể
  2. Các thay đổi được thực hiện trong giao dịch bị loại bỏ
  3. Nếu giao dịch là DDL, cam kết không hoạt động
  4. Không có cái nào ở trên

Answer: D. Thực hiện một giao dịch sẽ lưu vĩnh viễn các thay đổi dữ liệu đang chờ xử lý vào cơ sở dữ liệu.

71. Which of the following reasons will the best one on the usage of string?

  1. Sử dụng truy vấn phụ
  2. Lỗi cú pháp
  3. Quyền truy cập
  4. Vi phạm ràng buộc

Answer: C, B, D. Tham chiếu đến các đối tượng / cột không tồn tại, Các vấn đề về không gian có thể là những lý do khác.

72. What happens when an INSERT statement tries to insert records in an old table?

  1. Tất cả các cột sẽ nhận giá trị NULL
  2. Một bảng mới có cùng tên sẽ được tạo tự động và các giá trị sẽ được chèn
  3. INSERT không thể hoạt động và nó gây ra lỗi ORA
  4. Không có cái nào ở trên

Answer: C.

73. A user named 'Jonathan Adams' is able to SELECT columns from the EMPLOYEES table but he is unable to insert records into EMPLOYEES. What can be the reason?

  1. Jonathan được kết nối với cơ sở dữ liệu không hỗ trợ câu lệnh INSERT
  2. Không thể áp dụng câu lệnh INSERT trên bảng EMPLOYEES
  3. Jonathan có quyền truy cập vào CHỌN nhưng không có quyền truy cập CHÈN VÀO bảng NHÂN VIÊN
  4. Không có cái nào ở trên

Answer: C. Người dùng có thể tận hưởng quyền truy cập bảng dựa trên trách nhiệm của họ. Một người chỉ có thể có quyền truy cập đọc trên bàn trong khi người khác có thể có quyền truy cập đọc và ghi.

74. Suppose 1 million rows are to be inserted into the AUDIT table. An INSERT transaction runs successfully for the first 1000 rows and an ORA error is thrown 'Constraint violated'. What will happen to the values inserted in the first 1000 rows?

  1. Chúng sẽ vẫn như nó vốn có
  2. Tất cả chúng sẽ bị xóa
  3. Tất cả chúng sẽ trở lại
  4. Không có cái nào ở trên

Answer: C. Nếu bất kỳ câu lệnh DML nào trong quá trình giao dịch gặp (các) lỗi, giao dịch hoàn chỉnh sẽ được khôi phục.

Examine the table structure and consider the following query and answer the questions 75, 76 and 77 that follow:

SQL> DESC departments
 Name			 Null?	  Type
 ----------------------- -------- ----------------
 DEPARTMENT_ID		 NOT NULL NUMBER(4)
 DEPARTMENT_NAME	 NOT NULL VARCHAR2(30)
 MANAGER_ID			  NUMBER(6)
 LOCATION_ID			  NUMBER(4)
INSERT INTO departments values (15, NULL);

75. What will be the outcome of this statement?

  1. Nó sẽ chèn một hàng có Department_id = 15 và tất cả các giá trị khác là NULL
  2. Nó sẽ thực thi thành công nhưng chèn 0 hàng trong bảng
  3. Nó sẽ xuất hiện một lỗi ORA là không. cột và giá trị không khớp
  4. Không có cái nào ở trên

Answer: C. Bảng DEPARTMENTS chứa bốn cột nhưng câu lệnh INSERT chỉ cung cấp giá trị cho hai cột mà không đề cập đến các cột. Do đó, lỗi ORA được đưa ra.

76. What is true about the above INSERT statement?

  1. Nếu các cột không được đề cập trong câu lệnh INSERT, các giá trị được chèn vào vị trí trong các cột
  2. Bắt buộc phải đề cập đến các cột sau câu lệnh INSERT
  3. Cả A và B
  4. Không có cái nào ở trên

Answer: A. Nếu các cột không được chỉ định trong câu lệnh INSERT, Oracle sẽ ánh xạ tuần tự và vị trí từng giá trị vào cột trong bảng.

77. With respect to the statement given above, what will happen if the table is altered to add a new column?

  1. Câu lệnh sẽ vẫn hoạt động
  2. Việc thực thi câu lệnh sẽ tạo ra một lỗi vì sẽ có sự không khớp trong số không. cột và giá trị
  3. Sẽ không có thay đổi và câu lệnh sẽ thực hiện như trước
  4. Không có cái nào ở trên

Answer: B. Vì các cột không được chỉ định trước đó, sự cố vẫn sẽ tồn tại. Sự không khớp trong ánh xạ giá trị cột sẽ gây ra lỗi ORA.

Examine the table structure given below and consider the following queries and answer the questions 78 and 79 that follow:

SQL> DESC employees
 Name			 Null?	  Type
 ----------------------- -------- ----------------
 EMPLOYEE_ID		 NOT NULL NUMBER(6)
 FIRST_NAME			  VARCHAR2(20)
 LAST_NAME		 NOT NULL VARCHAR2(25)
 EMAIL			 NOT NULL VARCHAR2(25)
 PHONE_NUMBER			  VARCHAR2(20)
 HIRE_DATE		 NOT NULL DATE
 JOB_ID 		 NOT NULL VARCHAR2(10)
 SALARY 			  NUMBER(8,2)
 COMMISSION_PCT 		  NUMBER(2,2)
 MANAGER_ID			  NUMBER(6)
 DEPARTMENT_ID			  NUMBER(4)
Query 1:
INSERT INTO employees (employee_id , last_name, hire_date)
VALUES (100, 'ADAMS','21-DEC-12');
Query 2:
INSERT INTO employees (employee_id , last_name, hire_date)
VALUES (100, upper('ADAMS'),to_date('21-DEC-12','DD-MON-YY'));

78. Which of the above two queries is better?

  1. Cả hai đều tốt hơn
  2. Chỉ Truy vấn 1 là tốt hơn
  3. Chỉ Truy vấn 2 là tốt hơn
  4. Không có truy vấn nào là đúng

Answer: C. Truy vấn-2 tốt hơn vì nó chèn giá trị ngày dưới dạng ngày chứ không phải dưới dạng chuỗi. Mặc dù Oracle sẽ thực hiện chuyển đổi ngầm định của chuỗi ký tự được chỉ định là ngày, nhưng không được khuyến nghị.

79. Which of the following queries is equivalent of the query 2 given above?

  1. INSERT INTO employees (employee_id , last_name, hire_date)
    VALUES (101-1, upper('ADAMS'),to_date('21-DEC-12','DD-MON-YY'));
  2. INSERT INTO employees (employee_id , last_name, hire_date)
    VALUES (99+1, upper('ADAMS'),to_date('22-DEC-12','DD-MON-YY') +1 );
  3. INSERT INTO employees (employee_id , last_name, hire_date)
    VALUES (100, upper('ADAMS'),to_date('21-DEC-12','DD-MON-YY') - 1);
  4. INSERT INTO employees (employee_id , last_name, hire_date)
    VALUES (100, upper('ADAMS'),to_date('28-DEC-12','DD-MON-YY')-7 );

Answer: A, C, D. Các phép toán / hàm số học có thể được sử dụng để chèn các giá trị như hình trên.

80. You need to copy the data from one table to another table. Which of the following methods can be used?

  1. Bạn có thể sử dụng lệnh COPY
  2. Bạn có thể sử dụng lệnh INSERT
  3. Bạn có thể sử dụng lệnh UPDATE
  4. Không có cái nào ở trên

Answer: B. Các phép toán đường dẫn trực tiếp INSERT-AS-SELECT (IAS) là phương pháp được sử dụng phổ biến nhất để sao chép dữ liệu từ bảng này sang bảng khác.

81.Which of the following statements will copy data from the JOB_HISTORY table to the JOB_HISTORY_ARCHIVE table? (Consider the table structure as given)

SQL> desc job_history
 Name			 Null?	  Type
 ----------------------- -------- ----------------
 EMPLOYEE_ID		 NOT NULL NUMBER(6)
 START_DATE		 NOT NULL DATE
 END_DATE		 NOT NULL DATE
 JOB_ID 		 NOT NULL VARCHAR2(10)
 DEPARTMENT_ID			  NUMBER(4)
  1. INSERT INTO job_history values (select * from job_history);
  2. INSERT INTO JOB_HISTORY_ARCHIVE values (select * from job_history_archive);
  3. INSERT INTO JOB_HISTORY_ARCHIVE select * from job_history;
  4. Không có cái nào ở trên

Answer: C. Tùy chọn 'C' thể hiện đúng cách sử dụng phương thức IAS (INSERT-AS-SELECT).

Examine the given table structure. Consider the following query and answer the questions 82 and 83 that follow:

SQL> DESC employees
 Name			 Null?	  Type
 ----------------------- -------- ----------------
 EMPLOYEE_ID		 NOT NULL NUMBER(6)
 FIRST_NAME			  VARCHAR2(20)
 LAST_NAME		 NOT NULL VARCHAR2(25)
 EMAIL			 NOT NULL VARCHAR2(25)
 PHONE_NUMBER			  VARCHAR2(20)
 HIRE_DATE		 NOT NULL DATE
 JOB_ID 		 NOT NULL VARCHAR2(10)
 SALARY 			  NUMBER(8,2)
 COMMISSION_PCT 		  NUMBER(2,2)
 MANAGER_ID			  NUMBER(6)
 DEPARTMENT_ID			  NUMBER(4)
INSERT ALL
WHEN job_id   = 'SA_REP' then
INTO employees (employee_id , department_id , salary, hire_date)
VALUES (employee_id , 10, salary, hire_date)
WHEN job_id  <> 'SA_REP' then
INTO employees (employee_id , department_id  , salary, hire_date)
VALUES (employee_id , 20, salary, hire_date)
SELECT employee_id , department_id , job_id, salary, commission_pct , hire_date
FROM employees
WHERE hire_date > sysdate - 30;

82. Interpret the output of the above INSERT statement.

  1. Ném lỗi
  2. Nó sẽ chèn hồ sơ cho tất cả các nhân viên đã được thuê một tháng trước ngày sysdate.
  3. Nó sẽ chèn hồ sơ cho tất cả các nhân viên là Đại diện bán hàng trong bộ phận 10
  4. Không có cái nào ở trên

Answer: B, C. INSERT ALL có thể thực hiện chèn có điều kiện vào các bảng đích.

83. Which employees' data will be inserted in the department 20?

  1. Đại diện bán hàng
  2. Accountants
  3. Cả A hoặc B
  4. Không có cái nào ở trên

Answer: B. Theo câu lệnh INSERT ALL, thông tin chi tiết về nhân viên có job_id không phải là 'Đại diện bán hàng'.

84. What will be the outcome of the below query? (Consider the table structure as given)

SQL> DESC employees
 Name			 Null?	  Type
 ----------------------- -------- ----------------
 EMPLOYEE_ID		 NOT NULL NUMBER(6)
 FIRST_NAME			  VARCHAR2(20)
 LAST_NAME		 NOT NULL VARCHAR2(25)
 EMAIL			 NOT NULL VARCHAR2(25)
 PHONE_NUMBER			  VARCHAR2(20)
 HIRE_DATE		 NOT NULL DATE
 JOB_ID 		 NOT NULL VARCHAR2(10)
 SALARY 			  NUMBER(8,2)
 COMMISSION_PCT 		  NUMBER(2,2)
 MANAGER_ID			  NUMBER(6)
 DEPARTMENT_ID			  NUMBER(4)
INSERT INTO employees (employee_id , salary) VALUES (&employee_id , &salary);
COMMIT;
  1. Lỗi cú pháp vì không thể sử dụng các biến thay thế trong các câu lệnh DML
  2. Người dùng sẽ được nhắc nhập ID nhân viên và mức lương nhưng các biến thay thế không thể chèn dữ liệu vào bảng
  3. Người dùng sẽ được nhắc nhập ID nhân viên và tiền lương và hồ sơ sẽ được tạo thành công trong bảng NHÂN VIÊN
  4. Không có cái nào ở trên

Answer: C. Các biến thay thế hoạt động tốt với các câu lệnh DML.

85. Evaluate the following SQL statements that are executed in a user session in the specified order:

CREATE SEQUENCE id_seq;
SELECT id_seq.nextval
FROM dual;
 
INSERT INTO employees (employee_id ,first_name,job_id )
VALUES (ord_seq.CURRVAL, 'Steyn','Trainee');
 
UPDATE employees
SET employee_id = id_seq.NEXTVAL
WHERE first_name = 'Steyn'
AND job_id ='Trainee';

Kết quả của các câu trên sẽ như thế nào?

  1. Lệnh CREATE SEQUENCE sẽ gây ra lỗi vì giá trị nhỏ nhất và lớn nhất cho chuỗi chưa được chỉ định
  2. Tất cả các câu lệnh sẽ thực thi thành công và cột worker_id sẽ chứa giá trị 2 cho STEYN của nhân viên.
  3. Lệnh CREATE SEQUENCE sẽ không thực thi vì giá trị bắt đầu của chuỗi và giá trị gia tăng chưa được chỉ định.
  4. Tất cả các câu lệnh sẽ thực thi thành công và cột worker_id sẽ có giá trị 20 cho STEYN của nhân viên vì giá trị CACHE mặc định là 20.

Answer: B.

86. What is the restriction on the sub-query used in the UPDATE statement?

  1. Truy vấn phụ phải là truy vấn phụ nhiều hàng
  2. Truy vấn phụ phải là một truy vấn phụ hàng đơn
  3. Không có hạn chế
  4. Truy vấn phụ có thể là một hàng đơn hoặc truy vấn phụ nhiều hàng

Answer: B. Truy vấn phụ không được trả về nhiều hàng khi được sử dụng trong câu lệnh UPDATE

Examine the given table structure and consider the query given below and answer the questions 87 and 88 that follow:

SQL> DESC employees
 Name			 Null?	  Type
 ----------------------- -------- ----------------
 EMPLOYEE_ID		 NOT NULL NUMBER(6)
 FIRST_NAME			  VARCHAR2(20)
 LAST_NAME		 NOT NULL VARCHAR2(25)
 EMAIL			 NOT NULL VARCHAR2(25)
 PHONE_NUMBER			  VARCHAR2(20)
 HIRE_DATE		 NOT NULL DATE
 JOB_ID 		 NOT NULL VARCHAR2(10)
 SALARY 			  NUMBER(8,2)
 COMMISSION_PCT 		  NUMBER(2,2)
 MANAGER_ID			  NUMBER(6)
 DEPARTMENT_ID			  NUMBER(4)
UPDATE employees
SET salary = (SELECT salary FROM employees WHERE employee_id =7382);

87. What will be the outcome of the above query?

  1. Nó ném ra một lỗi ORA khi thực thi
  2. Lương của tất cả các nhân viên sẽ được cập nhật với cùng mức lương của nhân viên 7382
  3. Lương của tất cả nhân viên sẽ được cập nhật lên NULL
  4. Không có cái nào ở trên

Answer: B. Kết quả truy vấn có thể được sử dụng để cập nhật giá trị cột trong bảng.

88. Suppose if the employee 7382 doesn't exist in the EMPLOYEES table. What will be the outcome of the query?

  1. Nó gây ra lỗi ORA khi thực thi vì không thể cập nhật kết quả truy vấn vào các cột
  2. Lương của tất cả nhân viên sẽ được cập nhật lên NULL
  3. ORA ngoại lệ 'NO_DATA_FOUND' sẽ được nâng lên vì nhân viên 7382 không tồn tại
  4. Không có cái nào ở trên

Answer: B. Các câu lệnh UPDATE không nêu ra bất kỳ ngoại lệ nào ngoại trừ các lỗi cú pháp.

Examine the given table structure and consider the query given below and answer the questions 89 and 90 that follow:

SQL> DESC employees
 Name			 Null?	  Type
 ----------------------- -------- ----------------
 EMPLOYEE_ID		 NOT NULL NUMBER(6)
 FIRST_NAME			  VARCHAR2(20)
 LAST_NAME		 NOT NULL VARCHAR2(25)
 EMAIL			 NOT NULL VARCHAR2(25)
 PHONE_NUMBER			  VARCHAR2(20)
 HIRE_DATE		 NOT NULL DATE
 JOB_ID 		 NOT NULL VARCHAR2(10)
 SALARY 			  NUMBER(8,2)
 COMMISSION_PCT 		  NUMBER(2,2)
 MANAGER_ID			  NUMBER(6)
 DEPARTMENT_ID			  NUMBER(4)
UPDATE employees
set salary = (select salary from employees where last_name = 'Adams');

89. What will be the outcome of the query?

  1. Nó thực thi thành công
  2. Tất cả các hàng của bảng có cùng mức lương
  3. Nó có thể gây ra lỗi ORA 'TOO_MANY_ROWS' khi thực thi
  4. Không có cái nào ở trên

Answer: C. Truy vấn phụ có thể trả về nhiều hàng gây ra lỗi.

90. What changes in the above query will make sure there are no errors caused?

  1. Sử dụng một hàm đơn hàng như MAX, MIN hoặc AVG để giảm kết quả nhiều hàng thành kết quả vô hướng
  2. Thêm ràng buộc khóa chính trên cột LƯƠNG
  3. Không cần thay đổi
  4. Không có cái nào ở trên

Answer: A.

Examine the given table structure and consider the following query and answer the questions 91 and 92 that follow:

SQL> DESC employees
 Name			 Null?	  Type
 ----------------------- -------- ----------------
 EMPLOYEE_ID		 NOT NULL NUMBER(6)
 FIRST_NAME			  VARCHAR2(20)
 LAST_NAME		 NOT NULL VARCHAR2(25)
 EMAIL			 NOT NULL VARCHAR2(25)
 PHONE_NUMBER			  VARCHAR2(20)
 HIRE_DATE		 NOT NULL DATE
 JOB_ID 		 NOT NULL VARCHAR2(10)
 SALARY 			  NUMBER(8,2)
 COMMISSION_PCT 		  NUMBER(2,2)
 MANAGER_ID			  NUMBER(6)
 DEPARTMENT_ID			  NUMBER(4)
UPDATE employees
SET salary = (select max (salary) from employees where last_name = 'Adams');

91. What will be the outcome of the query given above?

  1. Nó sẽ cập nhật mức lương của tất cả các nhân viên bằng với mức lương của nhân viên tên là Adam
  2. Nó sẽ cập nhật mức lương của tất cả các nhân viên bằng mức lương trung bình của tất cả những người có họ là 'Adam'
  3. Nó sẽ cập nhật 0 hàng
  4. Nó sẽ chỉ cập nhật một hàng

Answer: B. Các hàm số học MAX hoặc MIN có thể được sử dụng với các truy vấn con để nhận các giá trị vô hướng và tránh lỗi.

92. Assume that the sub-query above is replaced with the following:

SELECT distinct salary from employees where last_name = 'Adam';

Kết quả của truy vấn chính được đưa ra ở trên là gì?

  1. Nó sẽ thực thi thành công cho kết quả không chính xác
  2. Nó sẽ thực thi thành công cho kết quả chính xác
  3. Nó sẽ xuất hiện một lỗi ORA
  4. Không có cái nào ở trên

Answer: C. nó đưa ra một lỗi vì có nhiều người có họ là 'Adam' sẽ có nhiều mức lương khác nhau.

Examine the given table structure and consider the following query and answer the questions 93 and 94 that follow:

SQL> DESC employees
 Name			 Null?	  Type
 ----------------------- -------- ----------------
 EMPLOYEE_ID		 NOT NULL NUMBER(6)
 FIRST_NAME			  VARCHAR2(20)
 LAST_NAME		 NOT NULL VARCHAR2(25)
 EMAIL			 NOT NULL VARCHAR2(25)
 PHONE_NUMBER			  VARCHAR2(20)
 HIRE_DATE		 NOT NULL DATE
 JOB_ID 		 NOT NULL VARCHAR2(10)
 SALARY 			  NUMBER(8,2)
 COMMISSION_PCT 		  NUMBER(2,2)
 MANAGER_ID			  NUMBER(6)
 DEPARTMENT_ID			  NUMBER(4)
UPDATE employees
SET salary = 50000;
WHERE job_id  in (select job_id  from job_history where department_id  = 10);

93. What will the above statement do? (Choose the most appropriate answer)

  1. Nó sẽ cập nhật tất cả các mức lương cho tất cả các nhân viên là 50000
  2. Nó sẽ cập nhật tất cả các mức lương cho tất cả các nhân viên trong bộ phận 10
  3. Nó sẽ cập nhật mức lương cho tất cả các nhân viên có một trong các ID công việc tương tự như ở bộ phận 10
  4. Không có cái nào ở trên

Answer: C.

94. What will happen if the WHERE clause given above is replaced with the following?

WHERE job_id = (select job_id from job_history where department_id  = 10);
  1. Nó sẽ thực thi thành công với kết quả không chính xác
  2. Nó sẽ thực thi thành công với kết quả chính xác
  3. Nó sẽ xuất hiện một lỗi ORA
  4. Không có cái nào ở trên

Answer: C. Dấu bằng sẽ làm tăng lỗi.

Examine the given table structure and consider the following statement. Answer the questions 95 to 97 that follow.

SQL> DESC employees
 Name			 Null?	  Type
 ----------------------- -------- ----------------
 EMPLOYEE_ID		 NOT NULL NUMBER(6)
 FIRST_NAME			  VARCHAR2(20)
 LAST_NAME		 NOT NULL VARCHAR2(25)
 EMAIL			 NOT NULL VARCHAR2(25)
 PHONE_NUMBER			  VARCHAR2(20)
 HIRE_DATE		 NOT NULL DATE
 JOB_ID 		 NOT NULL VARCHAR2(10)
 SALARY 			  NUMBER(8,2)
 COMMISSION_PCT 		  NUMBER(2,2)
 MANAGER_ID			  NUMBER(6)
 DEPARTMENT_ID			  NUMBER(4)
DELETE FROM employees where last_name = 'A%';
COMMIT;

95. What will be the outcome of the query given above?

  1. Thực thi thành công nhưng không có hàng nào bị xóa
  2. Tất cả nhân viên có last_name bắt đầu bằng "A" sẽ bị xóa
  3. Lỗi ORA vì câu lệnh DELETE không thể có vị từ WHERE
  4. Tất cả các hàng từ bảng nhân viên sẽ bị xóa

Answer: A. Câu lệnh DELETE có thể có vị từ mệnh đề WHERE. Dựa trên các điều kiện, các bản ghi sẽ bị xóa khỏi bảng.

96. Consider the following statement:

DELETE FROM employees where employee_id  IS NULL and job_id = NULL;
COMMIT;

Giả sử có ràng buộc NOT NULL đối với cột worker_id, kết quả của truy vấn trên sẽ như thế nào?

  1. Nó sẽ làm tăng lỗi ORA vì các vị từ WHERE không hợp lệ
  2. Nó sẽ thực thi thành công và không có hàng nào bị xóa
  3. Nó sẽ gây ra lỗi ORA vì nhiều vị từ không thể hoạt động trong các câu lệnh DELETE
  4. Không có cái nào ở trên

Answer: B. Nhiều vị từ có thể được áp dụng cho các câu lệnh DML UPDATE và DELETE.

97. Consider the following query:

DELETE FROM employees where department_id  = &deptID;
COMMIT;

Điều gì sẽ xảy ra khi câu lệnh trên được thực hiện?

  1. Nó sẽ gây ra lỗi vì các câu lệnh DML không thể sử dụng các biến thay thế
  2. Nó sẽ nhắc xóa ID bộ phận khỏi người dùng và xóa bản ghi có ID bộ phận đã cho
  3. Nó sẽ nhắc nhở ID bộ phận nhưng giao dịch không thể được cam kết
  4. Không có cái nào ở trên

Answer: B. Các biến thay thế có thể được sử dụng với các câu lệnh DML.

98. All parts of a transaction should complete or none of them. Which property of ACID rule complies with the given statement?

  1. Atomicity
  2. Consistency
  3. Isolation
  4. Durability

Answer: A. ACID đề cập đến các thuộc tính cơ bản của một giao dịch cơ sở dữ liệu: Tính nguyên tử, Tính nhất quán, Tính cô lập và Độ bền. Tính nguyên tử ngụ ý rằng toàn bộ chuỗi hành động phải được hoàn thành hoặc bị hủy bỏ. Tính nhất quán ngụ ý rằng giao dịch đưa các tài nguyên từ trạng thái nhất quán này sang trạng thái nhất quán khác. Sự cô lập ngụ ý rằng ảnh hưởng của một giao dịch không thể nhìn thấy đối với các giao dịch khác cho đến khi giao dịch được cam kết. Độ bền ngụ ý rằng những thay đổi được thực hiện bởi giao dịch đã cam kết là vĩnh viễn và phải tồn tại sau sự cố hệ thống.

99. What does the principle of Durability in the ACID property state?

  1. Nó nói rằng một cơ sở dữ liệu có thể mất các giao dịch đã hoàn thành
  2. Nó nói rằng một giao dịch không thể hoàn thành
  3. Nó nói rằng một khi một giao dịch hoàn tất, DB không thể để mất nó.
  4. Không có cái nào ở trên

Answer: C.

100. An incomplete transaction should be invisible to all the other users. Which of the properties of the ACID state this?

  1. Isolation
  2. Consistency
  3. Atomicity
  4. Durability

Answer: A. "I" là viết tắt của Isolation.

101. What does the principle of consistency states?

  1. Nó nói rằng kết quả của một truy vấn phải nhất quán với trạng thái của DB tại thời điểm bắt đầu truy vấn
  2. Nó nói rằng một giao dịch chưa hoàn thành sẽ ẩn đối với tất cả những người dùng khác
  3. Nó nói rằng một khi một giao dịch hoàn tất, DB không thể để mất nó
  4. Không có cái nào ở trên

Answer: A. "C" trong thuộc tính ACID là viết tắt của Consistency

102. What among the following best describes a Transaction?

  1. CHÈN vào COMMIT / ROLLBACK
  2. CẬP NHẬT để CAM KẾT / ROLLBACK
  3. XÓA để COMMIT / ROLLBACK
  4. CHÈN / CẬP NHẬT / XÓA để CAM KẾT / QUAY LẠI

Answer: D.

103. A user named "Jonathan" inserts data in the table EMPLOYEES. When will the other users be able to see the new data?

  1. Khi Jonathan cung cấp quyền truy cập cho người dùng
  2. Khi Jonathan thực hiện một câu lệnh ROLLBACK trong phiên
  3. Khi Jonathan thực hiện một câu lệnh COMMIT trong cùng một phiên
  4. Khi Jonathan mở một phiên mới và đưa ra CAM KẾT

Answer: C. Giao dịch đang hoạt động phải được cam kết trong cùng một phiên.

104. What can be said about the nesting of transactions?

  1. Có thể tối đa 2 cấp độ lồng
  2. Có thể có tối đa 255 mức lồng
  3. Lồng một giao dịch là không thể
  4. Chỉ có thể làm tổ 1 cấp độ

Answer: C.

105. Which of the following reasons will terminate a transaction?

  1. Một tuyên bố DDL
  2. Thoát khỏi một khách hàng
  3. Hệ thống gặp sự cố
  4. Tất cả những điều trên

Answer: D. DDL là cam kết tự động và sẽ kết thúc giao dịch đang hoạt động.