如果没有数据的话,返回的不是null

解决方案 »

  1.   

    语句在PL/SQL中应该没问题,但是应增加 NODATAFOUND exception 的处理,
      

  2.   

    可以先做判斷的
    select count(*) into i
    from Rl_da_EmployeeInfo where EmployeeID=v_SalesID;
    if i > 0 then
        select nvl(EmployeeName,'未知'), nvl(Department, '未知') 
        into v_EmployeeName,  v_DepartmentID 
        from Rl_da_EmployeeInfo 
        where EmployeeID=v_SalesID;
    elsif i = 0 then
        goto xxx
    end if 
    .....
    <<xxx>>
      

  3.   

    select nvl(max(EmployeeName),'未知'), nvl(max(Department), '未知') into v_EmployeeName, v_DepartmentID from Rl_da_EmployeeInfo where EmployeeID=v_SalesID;
      

  4.   

    实际上是没有符合条件的数据,baojianjun(包子) 说的很对。