powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Как проверить существование столбца
4 сообщений из 4, страница 1 из 1
Как проверить существование столбца
    #33797887
_sky_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте.

Поставилл вчера эксперемента ради DB2. Хм, раньше работал только с MySQL довольно старых версий, так что такмаие понятия как схема или триггер для меня в новинку. Так что сильно не пинайте.

Вот про триггеры и поговорим. Создал таблицу, в ней две колонки: name и surname. Теперь пытаюсь сделать триггер, который бы при вставке, если пропущена фамилия, вставлял бы туда значение 'pupkin'. Если я в инсерте указываю surname как пустой, то все работает, но если запрос вида:
INSERT INTO NULLID.users ( name ) VALUES ('Vasya')
то ничего не происходит. В общем-то, все понятно, нет во входном наборе данных такой колонки surname (которую я в триггере проверяю на пустую строку). А как тогда проверить можно?

Буду благодарен за пример триггера, выполняющий необходимые действия. Вроде все книжки я скачал, думаю, разберусь.
...
Рейтинг: 0 / 0
Как проверить существование столбца
    #33798241
Victor Metelitsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Складывается впечатление, что вы не знаете разницы между строкой с нулевой длиной и NULL-значением.
...
Рейтинг: 0 / 0
Как проверить существование столбца
    #33798760
Mark Barinstein
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
_sky_Создал таблицу, в ней две колонки: name и surname. Теперь пытаюсь сделать триггер, который бы при вставке, если пропущена фамилия, вставлял бы туда значение 'pupkin'. Если я в инсерте указываю surname как пустой, то все работает, но если запрос вида:
INSERT INTO NULLID.users ( name ) VALUES ('Vasya')
то ничего не происходит. В общем-то, все понятно, нет во входном наборе данных такой колонки surname (которую я в триггере проверяю на пустую строку). А как тогда проверить можно?

В триггере при проверке на отсутствие значения в surname используйте
Код: plaintext
coalesce(surname, '')=''
а не
Код: plaintext
surname=''
В DB2 строка нулевой длины ('') и отсутствие значения (NULL) - это не одно и то же.
...
Рейтинг: 0 / 0
Как проверить существование столбца
    #33808453
_sky_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем спасибо, реально помогло.
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Как проверить существование столбца
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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