- Bạn cần có khoảng cách giữa tên bảng và
WHERE
tiếp theo mệnh đề -
INTO
cần phải là một phần củaEXECUTE IMMEDIATE
, không phải là một phần của câu lệnh SQL động. - Câu lệnh SQL động không được có dấu chấm phẩy ở cuối
-
EXECUTE IMMEDIATE
câu lệnh phải kết thúc bằng dấu chấm phẩy
Kết hợp chúng lại với nhau, một cái gì đó như thế này sẽ hoạt động
declare
VR_TABLE VARCHAR2(256);
VR_UPDATE VARCHAR2(256);
begin
VR_TABLE :='SYSTEM_STATUS';
EXECUTE IMMEDIATE 'select UPDATE_VERSION from ' || VR_TABLE || ' where rownum < 2'
INTO VR_UPDATE;
end;
Tất nhiên, vì bạn không làm gì với VR_UPDATE
, sẽ không có gì được hiển thị khi khối ẩn danh này được thực thi.