Программы "Простой софт" www.prostoysoft.ru

ВНИМАНИЕ! РЕКЛАМНЫЕ СООБЩЕНИЯ И ГИПЕРССЫЛКИ В ФОРУМЕ ЗАПРЕЩЕНЫ (посты удаляются автоматически)
Текущее время: 22.11.2024 19:58

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 21 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: Ошибка синтаксиса триггера
СообщениеДобавлено: 19.09.2012 13:50 
Не в сети

Зарегистрирован: 19.09.2012 13:43
Сообщения: 23
Здравствуйте, уважаемые разработчики.
Столкнулся с проблемой. Триггер набран, как один из тех, что дан в примере. Программа ругается на синтаксис. Помогите, пожалуйста, разобраться.
Скриншоты прилагаю.
Вложение:
ошибкатриггера.JPG
ошибкатриггера.JPG [ 184.48 КБ | Просмотров: 79661 ]

Вложение:
ошибкатриггера1.JPG
ошибкатриггера1.JPG [ 125.34 КБ | Просмотров: 79661 ]


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ошибка синтаксиса триггера
СообщениеДобавлено: 19.09.2012 18:06 
Не в сети
Администратор

Зарегистрирован: 15.02.2006 20:16
Сообщения: 3690
Откуда: Санкт-Петербург
Откройте вашу БД в Access и вставьте вашу SQL команду в новый запрос. Access вам подробно скажет о проблемном месте в выражении.

_________________
2B OR NOT 2B = TRUE


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ошибка синтаксиса триггера
СообщениеДобавлено: 19.09.2012 18:18 
Не в сети

Зарегистрирован: 19.09.2012 13:43
Сообщения: 23
Пропущен оператор в выражении запроса '[QauntitySum] + <Quantity>'

Ну так в примере присвоение точно также написано. Как исправить? Создать переменную дополнительную? в которую сначала посчитать сумму, А потом присвоить это значение полю [QauntitySum] ?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ошибка синтаксиса триггера
СообщениеДобавлено: 19.09.2012 18:21 
Не в сети
Администратор

Зарегистрирован: 15.02.2006 20:16
Сообщения: 3690
Откуда: Санкт-Петербург
При вставке в Access все то, что в угловых скобках, включая сами угловые скобки, надо заменить на какие-то конкретные значения (любые).
При этом соблюдать правило: все строки окружаются одинарными или двойными кавычками, даты - оданарными кавычками или диезами (в Access).
Поле QuantitySum присутствует в таблице tblNutritionRecord ?

_________________
2B OR NOT 2B = TRUE


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ошибка синтаксиса триггера
СообщениеДобавлено: 19.09.2012 18:30 
Не в сети

Зарегистрирован: 19.09.2012 13:43
Сообщения: 23
Цитата:
Поле QuantitySum присутствует в таблице tblNutritionRecord ?


Конечно. Я пробовал и с другими колонками. И новую пробовал создавать.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ошибка синтаксиса триггера
СообщениеДобавлено: 19.09.2012 18:33 
Не в сети
Администратор

Зарегистрирован: 15.02.2006 20:16
Сообщения: 3690
Откуда: Санкт-Петербург
Ну, так выполняется ваш запрос в Access? (Или в чем проблема?)

_________________
2B OR NOT 2B = TRUE


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ошибка синтаксиса триггера
СообщениеДобавлено: 19.09.2012 18:39 
Не в сети

Зарегистрирован: 19.09.2012 13:43
Сообщения: 23
Нет, не выполняет.
Тоже самое пишет. Ну и я не могу все подставить численное в [] скобках. У меня же одно из таких значений должно вычисляться.

UPDATE tblNutritionRecord SET [QuantitySum] = 100 + <Amount> WHERE ID = 1


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ошибка синтаксиса триггера
СообщениеДобавлено: 19.09.2012 18:54 
Не в сети
Администратор

Зарегистрирован: 15.02.2006 20:16
Сообщения: 3690
Откуда: Санкт-Петербург
UPDATE tblNutritionRecord SET [QuantitySum] = 100 + 1 WHERE ID = 1

выполняется в Access?

_________________
2B OR NOT 2B = TRUE


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ошибка синтаксиса триггера
СообщениеДобавлено: 19.09.2012 19:00 
Не в сети

Зарегистрирован: 19.09.2012 13:43
Сообщения: 23
Так ошибок не выскочило, но желаемый результат не достигнут. Асло в строке состояния acces " Данное действие или событие заблокировано в режиме отключения. "


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ошибка синтаксиса триггера
СообщениеДобавлено: 19.09.2012 19:21 
Не в сети
Администратор

Зарегистрирован: 15.02.2006 20:16
Сообщения: 3690
Откуда: Санкт-Петербург
Значение 101 появилось в поле QuantitySum во всех записях таблицы?

_________________
2B OR NOT 2B = TRUE


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ошибка синтаксиса триггера
СообщениеДобавлено: 19.09.2012 20:20 
Не в сети

Зарегистрирован: 19.09.2012 13:43
Сообщения: 23
Нет, все как были нулями, так и остались. Пробовал их не нулями делать, но тоже не добавляется.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ошибка синтаксиса триггера
СообщениеДобавлено: 19.09.2012 21:39 
Не в сети
Администратор

Зарегистрирован: 15.02.2006 20:16
Сообщения: 3690
Откуда: Санкт-Петербург
Ну, тогда что-то не так с вашей таблице tblNutritionRecord. Раз самый простой SQL не выполняется.
Поле QuantitySum точно есть в этой таблице и оно числового типа?

_________________
2B OR NOT 2B = TRUE


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ошибка синтаксиса триггера
СообщениеДобавлено: 21.09.2012 07:22 
Не в сети

Зарегистрирован: 19.09.2012 13:43
Сообщения: 23
точно есть. ставил и просто числовой оба поля и числовой дробный. могу отправить вам базу данных, сами увидите.

Отключил безопасность в Acces. Стало так:

В вашей программе по прежнему пишет ошибку триггера.

В Acces выполняется вот такой запрос обновляя всю колонку.

UPDATE tblNutritionRecord SET [QuantitySum] = 100 + 1 WHERE ID = 1


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ошибка синтаксиса триггера
СообщениеДобавлено: 21.09.2012 11:35 
Не в сети
Администратор

Зарегистрирован: 15.02.2006 20:16
Сообщения: 3690
Откуда: Санкт-Петербург
Поставьте в таблице определения триггеров, в колонке "Сообщение" текст "SQL", в этом случае будет показана финальная SQL-инструкция триггера перед выполнением. Скачайте последнюю версию программы.

_________________
2B OR NOT 2B = TRUE


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ошибка синтаксиса триггера
СообщениеДобавлено: 22.09.2012 06:44 
Не в сети

Зарегистрирован: 19.09.2012 13:43
Сообщения: 23
Сделал, как вы сказали.

вот такое сообщение выдает UPDATE tblNutritionRecord SET NULL = NULL + 10 WHERE ProductID = 1


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 21 ]  На страницу 1, 2  След.

Часовой пояс: UTC + 4 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB