JavaScript is required

Cho table được khai báo như sau,Given the table declaration below, xác nhận việc sử dụng không hợp lệ kiểu DL timestamp trong 1 biểu thức hay chức năng(chọn 2)? CREATE TABLE TRANSACTIONS (TRANS_ID NUMBER, AMOUNT NUMBER(10,2), TRANS_START TIMESTAMP, TRANS_END TIMESTAMP, SHIP_DATE DATE, EXPIRE_DATE INTERVAL DAY(0) TO SECOND(0));

A.

TRANS_START - TRANS_END

B.
TO_TIMESTAMP(AMOUNT, ‘YY-MM-DD HH:MI:SS’)
C.
TRANS_START + INTERVAL „4‟ DAY
D.
TRANS_START + SHIP_DATE
Trả lời:

Đáp án đúng: D


Câu hỏi yêu cầu xác định những cách sử dụng không hợp lệ kiểu dữ liệu TIMESTAMP trong các biểu thức hoặc hàm. A. `TRANS_START - TRANS_END`: Phép trừ hai giá trị TIMESTAMP là hợp lệ, kết quả trả về là một INTERVAL. B. `TO_TIMESTAMP(AMOUNT, ‘YY-MM-DD HH:MI:SS’)`: Hàm `TO_TIMESTAMP` dùng để chuyển đổi một chuỗi thành kiểu TIMESTAMP. Ở đây, `AMOUNT` là kiểu NUMBER, do đó việc sử dụng `AMOUNT` làm đầu vào cho `TO_TIMESTAMP` là không hợp lệ. C. `TRANS_START + INTERVAL „4‟ DAY`: Phép cộng một giá trị TIMESTAMP với một INTERVAL là hợp lệ, kết quả trả về là một TIMESTAMP. D. `TRANS_START + SHIP_DATE`: `TRANS_START` là kiểu TIMESTAMP và `SHIP_DATE` là kiểu DATE. Trong Oracle, bạn không thể trực tiếp cộng một TIMESTAMP với một DATE. Bạn cần chuyển đổi `SHIP_DATE` sang TIMESTAMP trước khi thực hiện phép cộng, nếu không sẽ gây ra lỗi. Vì vậy, đây là một cách sử dụng không hợp lệ. Vậy, đáp án đúng là B và D.

Câu hỏi liên quan