Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Проверка в триггере на вставку записи / 4 сообщений из 4, страница 1 из 1
18.09.2014, 16:19:18
    #38750657
KSVSVK
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка в триггере на вставку записи
Есть таблица:

Код: sql
1.
2.
3.
4.
5.
6.
create table operations(
Id integer unsigned not null auto_increment,
Investor integer unsigned not null default 0,
Delta Dec(11, 2) not null,
Data date default null,
primary key (Id));



и триггер (сокращенный вариант):

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
delimiter !!

create trigger operations_insert
before insert on operations
for each row
begin
  set new.Data := if(new.Data is null, now(), new.Data);

  select Sum(Delta) from operations into @I
  where ((Investor = new.Investor)and((Delta > 0)or(Data < new.Data)));
end !!

delimiter ;



Т.е. мне нужно внутри триггера посчитать несколько сумм и потом использовать их для контроля вводимых значений.
При попытке выполнить имею:

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that
corresponds to your MySQL server version for the right syntax to use near 'where
((Investor = new.Investor)and((Delta > 0)or(Data < new.Data)));


end' at line 8

В чем состоит ошибка понять не могу
...
Рейтинг: 0 / 0
18.09.2014, 17:35:27
    #38750769
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка в триггере на вставку записи
В отсутствии точки с запятой в одной из строк.
...
Рейтинг: 0 / 0
18.09.2014, 17:36:19
    #38750770
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка в триггере на вставку записи
Или скорее в том, что кляузы запроса расположены в неправильном порядке - INTO поставлена перед WHERE.
...
Рейтинг: 0 / 0
18.09.2014, 19:30:56
    #38750881
miksoft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка в триггере на вставку записи
AkinaИли скорее в том, что кляузы запроса расположены в неправильном порядке - INTO поставлена перед WHERE.+1
...
Рейтинг: 0 / 0
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Проверка в триггере на вставку записи / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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