Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Update Statement / 8 сообщений из 8, страница 1 из 1
30.03.2016, 13:17
    #39204052
-_Михаил_-
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Update Statement
Привет!

Есть таблица KONTO с полем MANDANT и прочими. Необходимо поменять значение в поле MANDANT во всех полях

Пишу
UPDATE KONTO SET MANDANT='TXVWT' WHERE HAUPTKONTONUMMER='NL*'
Получаю ошибку
SQL0100W No row was found for FETCH, UPDATE or DELETE; or the result of a
query is an empty table. SQLSTATE=02000

Если пытаюсь изменить указывая только одно поле, то получается

UPDATE KONTO SET MANDANT='TXVWT' WHERE HAUPTKONTONUMMER='NL03VOWA0434458058'
DB20000I The SQL command completed successfully.

Но полей там у меня много

Вопрос:

Как обновитъ все поля одним приказом

Спасибо заранее
...
Рейтинг: 0 / 0
30.03.2016, 13:50
    #39204106
mahaon2000
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Update Statement
-_Михаил_-,

UPDATE KONTO SET MANDANT='TXVWT' WHERE HAUPTKONTONUMMER like 'NL%'
...
Рейтинг: 0 / 0
30.03.2016, 13:53
    #39204110
-_Михаил_-
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Update Statement
mahaon2000-_Михаил_-,

UPDATE KONTO SET MANDANT='TXVWT' WHERE HAUPTKONTONUMMER like 'NL%'

Спасибо, попробовал. Увы дает ошибку

DB21034E The command was processed as an SQL statement because it was not a
valid Command Line Processor command. During SQL processing it returned:
SQL0803N One or more values in the INSERT statement, UPDATE statement, or
foreign key update caused by a DELETE statement are not valid because the
primary key, unique constraint or unique index identified by "1" constrains
table "DB2INST1.KONTO" from having duplicate values for the index key.
SQLSTATE=23505
...
Рейтинг: 0 / 0
30.03.2016, 13:57
    #39204118
const64
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Update Statement
-_Михаил_-,

Видимо, у Вас на поле MANDANT создан уникальный индекс (или констрейн), и при апдейте - он перестает быть уникальным...
...
Рейтинг: 0 / 0
30.03.2016, 14:00
    #39204123
-_Михаил_-
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Update Statement
const64,

и что тут можно сделать?
...
Рейтинг: 0 / 0
30.03.2016, 14:22
    #39204169
const64
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Update Statement
-_Михаил_-,

Хм... ну, например, выяснить, нужен ли этот индекс вообще - если не нужен - то удалить его (удалить это поле из индекса), а если нужен - то отказаться от апдейта...
...
Рейтинг: 0 / 0
30.03.2016, 14:26
    #39204176
-_Михаил_-
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Update Statement
const64-_Михаил_-,

Хм... ну, например, выяснить, нужен ли этот индекс вообще - если не нужен - то удалить его (удалить это поле из индекса), а если нужен - то отказаться от апдейта...

Я не совсем понимаю. Если я изменяю поединично, то все получается, а если все сразу то нет. Не логично это как то
...
Рейтинг: 0 / 0
30.03.2016, 14:46
    #39204202
const64
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Update Statement
-_Михаил_-,

Почему нелогично? Допустим, у Вас под апдейт попадает 100 записей, из которых под SQL0803N попадают 47-я и 83-я записи. Поединично Вы-же меняете не все эти 100 записей, а, например, 1, 2 и 3-ю - соотв., на нарушение уникальности не попадаете.
...
Рейтинг: 0 / 0
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Update Statement / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]