Nếu một nhận xét bao gồm toàn bộ từ end
thì trình điều khiển (hoặc máy chủ) Oracle dường như đang diễn giải điều này không tốt. Nếu bạn xóa end
từ trong nhận xét, câu lệnh thực thi chính xác.
Tôi nghĩ điều này là do nó không mong đợi dấu chấm phẩy sau khi trải qua lệnh 'kết thúc' (mặc dù nó không nên phân tích cú pháp một nhận xét).
Câu lệnh sau đây thực thi mà không gặp sự cố và trả về 7.
/* end */\nSELECT 7 FROM MyTable
Câu lệnh sau nâng cao ORA-00911
/* end */\nSELECT 6 FROM MyTable;
Câu lệnh sau trả về 5
/**/\nSELECT 5 FROM MyTable;
Có khả năng Oracle phân tích nhận xét vì đó là cách nó áp dụng các 'gợi ý' về hoạt động / tối ưu hóa tham gia.