Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Помогите с тригером !!Пож... / 4 сообщений из 4, страница 1 из 1
21.02.2008, 18:53
    #35148796
Andr___!
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с тригером !!Пож...
Ребята,понимаю,что вопрос глупый,но всё же прошу помощи.
Задача такая:
в таблице применяется update
нужно чтобы в поле cur_user отображался логин совершившего update/
тригер


Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
alter trigger DBA.passenger_au_trg after update of country_id,first_name,last_name,birth_date,passport,sex,first_name_eng,last_name_eng,
pass_status order  1  on DBA.passenger
referencing old as oldrow new as newrow
for each statement
begin
  update DBA.passenger set cur_user = current user,cur_date = current timestamp where
    newrow.birth_date <> oldrow.birth_date or oldrow.country_id <> newrow.country_id or oldrow.first_name <> newrow.first_name or
    oldrow.last_name <> newrow.last_name or oldrow.first_name_eng <> newrow.first_name_eng or oldrow.last_name_eng <> newrow.last_name_eng or
    oldrow.passport <> newrow.passport or oldrow.sex <> newrow.sex or oldrow.pass_status <> newrow.pass_status
end

изменяет логины во всех строках,а нужно только в той которую update - тили
ASA7

Заранее спасибо

Модератор: не забываем про тег SRC
...
Рейтинг: 0 / 0
21.02.2008, 19:19
    #35148877
White Owl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с тригером !!Пож...
А вот так не проще будет?
Код: plaintext
alter table passenger alter cur_user char( 32 ) null default LAST USER;
И никаких собственных триггеров не нужно вообще.
...
Рейтинг: 0 / 0
26.02.2008, 15:23
    #35155655
Сергей Васкецов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с тригером !!Пож...
White OwlА вот так не проще будет?
Код: plaintext
alter table passenger alter cur_user char( 32 ) null default LAST USER;
И никаких собственных триггеров не нужно вообще.
И что, при update-е будет обновляться default-ным значением? В ASA это так работает?
...
Рейтинг: 0 / 0
26.02.2008, 17:25
    #35156130
White Owl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с тригером !!Пож...
Сергей Васкецов White OwlА вот так не проще будет?
Код: plaintext
alter table passenger alter cur_user char( 32 ) null default LAST USER;
И никаких собственных триггеров не нужно вообще.
И что, при update-е будет обновляться default-ным значением? В ASA это так работает?Да. Почитай документацию чтобы не пугаться незнакомых конструкций. Главу:
SQL Anywhere® Server - SQL Reference > SQL Language Elements > Special values > LAST USER special value
...
Рейтинг: 0 / 0
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Помогите с тригером !!Пож... / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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