検索のためのストアドプロシージャは、Oracleでエラーを返します

可能重複:
  を使用してテーブルからデータを検索するtablenameをパラメータとして渡すことでoracleのストアド・プロシージャ

この手順は正しく動作していませんが、

create or replace procedure bank_search_sp
(
p_tablename in varchar2,
p_searchname in varchar2,
p_bankcode out varchar2,
p_bankname out varchar2,
p_dist_code out number
)
as
v_tem varchar2(5000);
begin
v_tem :='select bankcode,bankname,dist_code from ' || UPPER (p_tablename) || '
where bankname like '''|| p_searchname||'';
execute immediate v_tem into p_bankcode,p_bankname,p_dist_code using p_searchname ;
commit;
end bank_search_sp;

プロシージャは作成されていますが、実行されたときに実際に何が起こるかはわかりません。これはエラーです。

ORA-01756: quoted string not properly terminated
ORA-06512: at "PENSIONS.BANK_SEARCH_SP", line 14
ORA-06512: at line 1

提案が必要です、事前に感謝します。

0
@Arun commit は無意味で、あなたがしたくないものを間違ってコミットすることがあります。
追加された 著者 Ben,
dbms_output.put_line(v_tem)を使用してみてください。即時実行を実行する直前。実行する文が表示されます。
追加された 著者 tbone,
してください、私の答えを参照してください同じ質問をご覧ください。
追加された 著者 Szilard Barany,
ありがとうSzilard ...それを得た
追加された 著者 Arun,

答えはありません

0