Oracle
 sql >> база данни >  >> RDS >> Oracle

ORA-01403:няма намерени данни за Select into

Въпреки че сте поставили условие WHERE, по-добрият начин би бил да се обработи случай на ненамерен запис или грешка „Няма намерени данни“. Бих написал горния код с обвиване на SELECT израз със собствен BEGIN/EXCEPTION/END блокирай.

Кодът може да бъде нещо подобно:

BEGIN
    SELECT trim(name) 
    INTO fullName
    FROM (
        SELECT n.name
        FROM directory dir, store n
        WHERE dir.name = n.name
        AND dir.STATUS NOT IN ('F','L','M')           
        ORDER BY n.imp, dir.date
    )
    WHERE rownum <= 1;
EXCEPTION
    WHEN NO_DATA_FOUND THEN
        fullName := NULL;
END;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. ГРЕШКА на Oracle:ORA-00900:невалиден SQL оператор

  2. Номер на ред в sql сървър като LINE в USER_SOURCE oracle

  3. Ръководство стъпка по стъпка за инсталиране на MySQL в Windows

  4. oracle sql:актуализиране, ако съществува, друго вмъкване

  5. TNS:слушателят в момента не знае за услугата, поискана в дескриптора за свързване