2012-04-26 2 views
1

Я хочу добавить значения в новый столбец, который я добавил в таблицу. Мне нужно обновить около 80 строк и нашел ответ здесь, что использовал подобный формат, как я попробовал:Sybase Несколько обновлений

Update table_name 
set column_name = 'G' 
where item_id in (6,7,12,15,16,17,22,24,134,166...etc) 

имя_столбец CHAR (10) и item_id является INT

Я получаю сообщение об ошибке:

`Subquery returned more than 1 value. This is illegal when the subquery follows =, !=, <, <= , >, >=, or when the subquery is used as an expression.' 

Я пробовал просто использовать набор из 3 значений и получил ту же ошибку. Я слишком новичок в этом, чтобы понять, почему это не работает.

Он работает один, в то время, но я предпочел бы не :)

+0

Поместите здесь точный запрос. –

+0

?? Это был мой запрос ... – djailer

+0

какая версия Sybase? Сделайте 'select @@ version' и поместите здесь результат. –

ответ

0

С

Update table_name 
set column_name = 'G' 
where item_id in (6,7,12,15,16,17,22,24,134,166...etc) 

ваш запрос, я могу сказать, что у вас есть триггер, который запускается каждый раз, когда вы делаете обновить имя_таблицы.

Ваш запрос не даст сообщение об ошибке, поэтому проблема внутри триггера должна быть проблемой!

+0

Я рассмотрел триггер обновления для этого table ... в UPD, INS или DEL триггера нет такого сообщения. Может ли быть что-то общее? – djailer

+0

Это странно, триггер не выполняет хранимую процедуру или что-то в этом роде? Или обновляет/ins/del информацию из таблицы, которая может иметь другой триггер? –

+0

Я попытался скопировать его, но в поле комментариев недостаточно места. Я не видел ссылок на какие-либо другие таблицы или другие sp. – djailer

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