2009-02-24 2 views
0

Мой запрос удаления не работает conditionaly, он удаляет все записи из таблицы TNEУдалить в хранимой процедуре

PROCEDURE   "SP_NEW" (
logon_id  IN VARCHAR2, 
id  IN VARCHAR2, 
key  IN VARCHAR2, 
error_code  OUT NUMBER, 
error_message  OUT VARCHAR2) 

... 
PROCEDURE delete_counts(str_logon_id IN VARCHAR2) 
IS 
BEGIN 
    DELETE FROM TMS_ENTITY_COUNT WHERE logon_id = str_logon_id; 
END; 

BEGIN; 

delete_counts(logon_id); 

END; 

Пожалуйста, помогите.

+0

Спасибо за помощь. У моего tms_entity_count есть несколько столбцов, один из них - user_logon_id. Я пытаюсь удалить записи из этой таблицы, которые имеют значения, заданные параметром ввода. Если я использую @str_logon_id и: str_logon_id, процедура не скомпилирована. - Angela (3 мин назад) – 2009-02-24 03:05:06

ответ

0

На самом деле информации недостаточно, но я мог бы сделать пару догадок.

  • ли TMS_ENTITY_COUNT есть два столбца с именем logon_id и str_logon_id? Они оба равны все время?
  • В зависимости от вашего вкуса SQL вам нужен символ @ или: перед вашим именем переменной, как в ...WHERE logon_id =@str_logon_id?
+0

Спасибо за помощь. У моего tms_entity_count есть несколько столбцов, один из них - user_logon_id. Я пытаюсь удалить записи из этой таблицы, которые имеют значения, заданные параметром ввода. Если я использую @str_logon_id и: str_logon_id, процедура не скомпилирована. – 2009-02-24 02:52:08

Смежные вопросы