一个存储过程要求传入一个varchar2变量v_loginName,语句如下,我需要v_loginName加单引号,查了一下google说是使用下面方法可以但是,我直接运行后发现不行啊请大家指点
select count(1) into nCount from epare_employee where idcard='||v_loginName||';

解决方案 »

  1.   

    你传进去的就是varchar2呀!
    应该不用再加'符号了。
    如:
    select count(1) into nCount from epare_employee where idcard=v_loginName;
    --你的idcard是varchar2类型吗?如果是就不需要作什么处理;如果不是就需要转换一下:如
    select count(1) into nCount from epare_employee where idcard=to_number(v_loginName);
      

  2.   

    create or replace procedure test_pro(zy varchar2) is
    kk ZYJ.ZYZL%type;
    begin
    select zyzl into kk from zyj where zyzl = zy;
      dbms_output.put_line(kk);
    end test_pro;
    不用引号