SELECT

shamanoff
Дата: 31.07.2005 12:56:26
Есть таблица tb_ouo с полем id(PK) и External_code (INTEGER) - UNIQUE

Пишу запрос в процедуре
SELECT id FROM tb_ouo WHERE External_code = SUBSTR(v_code, 1, s);

При выполнении процедуры выдает:
ERROR at line 1:
ORA-01422: Точная выборка возвращает количество строк больше запрошенного
ORA-06512: на "IVAN.ESTABLISHMENT_PROCEDURE", line 145
ORA-06512: на line 1

v_code - переменная VARCHAR2 в которую записывается значение считываемого поля из другой таблицы.

Каким местом оракл сумел этим запросом выудить больше одного значения??? Не понимаю...
ts_j
Дата: 31.07.2005 14:23:38
Чудес ведь не бывает, проверь, может у тебя отключено ограничение по уникальности.
shamanoff
Дата: 31.07.2005 14:31:31
Я ведь перед проверкой делал выборку из tb_ouo. Результат запроса - 28 записей (сколько и должно быть) с уникальными значениями поля external_code.

Пересоздал таблицу - все заработало.

Объяснить даже не пытаюсь. :)