ORA-01722:Oracle更新中的数字无效

时间:2013-09-13 06:34:47

标签: oracle

如何在oracle中使用隐式游标更新emp_name。

为此我在pl / sql中编写了一个程序

 DECLARE  
     var_names VARCHAR2(30);
    BEGIN
      UPDATE emp
      SET emp_name= emp_name +'garu';
      IF SQL%NOTFOUND THEN
        dbms_output.put_line('None of the salaries where updated');
      ELSIF SQL%FOUND THEN
      var_names:=sql%rowcount;
        dbms_output.put_line('Salaries for ' || var_names|| 'employees are updated');
      END IF; 
    END;

但显示错误,即

Error report:
ORA-01722: invalid number
ORA-06512: at line 4
01722. 00000 -  "invalid number"
*Cause:    
*Action:

2 个答案:

答案 0 :(得分:2)

SET子句中,您在非数字操作数之间使用算术运算符。

Oracle中的concatenation operator||,而不是+

答案 1 :(得分:2)

+不能用于连接..您必须使用concat函数或||