привязка входного параметра к предложению like в курсоре в PLSQL - PullRequest
0 голосов
/ 22 января 2020

Я пытаюсь написать процедуру PL SQL с входным параметром, который будет назначен предложению like внутри курсора. BUt привязка не работает должным образом. Пожалуйста, помогите мне решить.

PROCEDURE SEARCH_DONOR (p_nic_ VARCHAR2,
                        records_ OUT Sys_Refcursor) 

  AS

  v_stmt_str      VARCHAR2(200);
  v_stmt_str2      VARCHAR2(4000);

  BEGIN

       OPEN  records_  FOR
      SELECT DONOR_ID_        Id,
             FIRST_NAME_      First_Name,
             LAST_NAME_       Last_Name,
             DOB_             Date_of_Birth,
             NIC_             NIC,
             CONTACT_NUMBER_  Contact_Number,
             BLOOD_TYPE_ID_   Blood_type

      FROM MOISLK_DONOR_INFO_TAB
      WHERE NIC like '%p_nic_%'
      AND CLIENT_STATUS_ = 0
      ORDER BY DONOR_ID_;

  END SEARCH_DONOR;

1 Ответ

4 голосов
/ 22 января 2020

Должно быть

WHERE NIC like '%' || p_nic_ || '%'

, потому что вы искали строку p_nic, а вы хотите найти строку, которая содержит значение этого параметра.

...