SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#26 24.12.2009 18:53:42

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6756

Re: Помогите написать триггер

Ну, если «неправильно» — это то, что Вы добавляете строку вместо обновления,
то нужно обновлять вместо добавления smile

Неактивен

 

#27 26.12.2009 12:01:05

free_girl
Участник
Зарегистрирован: 24.12.2009
Сообщений: 2

Re: Помогите написать триггер

когда я пишу просто сам триггер, то никаких ошибок не выдает.
а когда вставляю строку в contract, то выдает такую ошибку:

ERROR 1054 (42S22): Unknown column 'contract.agent_id' in 'field list'

почему? ведь такое поле есть...
и при этом ничего в таблицу contract не вставляется

Неактивен

 

#28 28.12.2009 15:07:34

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6756

Re: Помогите написать триггер

Попробуйте NEW.agent_id wink

Неактивен

 

#29 27.04.2015 11:29:58

Indi
Участник
Зарегистрирован: 27.04.2015
Сообщений: 1

Re: Помогите написать триггер

Здравствуйте) Помогите написать ограничение(процедуру или триггер), чтобы в таблице "Анкеты" был либо Id_сотрудника, либо Id_соискателя.
Таблица "Анкеты": Id_Анкеты, Id_сотрудника, Id_соискателя. И таблицы "Соискатели", "Сотрудники".

Неактивен

 

#30 27.04.2015 12:29:19

deadka
Администратор
Зарегистрирован: 14.11.2007
Сообщений: 2420

Re: Помогите написать триггер

Вы хотите, чтобы нельзя было задать одновременно и id сотрудника и id соискателя (и соответственно чтобы нельзя было не задать не один их них)?

К сожалению, такой check constraint в MySQL написать нельзя. Так что, задачу при такой постановке, боюсь можно решить только триггером, который будет бросать signal в случае, если не задан ни сотрудник ни соискатель (или оба не заданы).

Но и это решение считается не очень хорошим, триггеры для другого предназначены.
Почему не хотите на уровне приложения такую ошибку ловить?


Зеленый свет для слабаков, долги отдают только трусы, тру гики работают только в консоли...

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson