Форум программистов, компьютерный форум, киберфорум
Microsoft Access
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
32 / 32 / 7
Регистрация: 24.12.2009
Сообщений: 71
1

Мега странный запрос

05.11.2010, 20:20. Показов 1251. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Суть в том что мне нужно в одном запросе сделать 3 вещи, а именно.
1. удалить данные из одной таблицы.
2. изменить данные во второй таблице.
3. во второй же таблице добавить данные.
Почему один запрос?
я ввожу 2 параметра для удаления, они мне так-же понадобятся для добавления и изменения.
Пока что я сделал первые два пункта, и моя любовь к постоянной проверке столкнула меня со следующей ошибкой. Пишет что "обнаружены символы за приделами инструкции SQL".
код вот
SQL
1
2
3
4
5
6
7
DELETE Продажа
FROM Продажа
WHERE ([Введите индификационный номер владельца, продавшего картину]=Продажа!желающий) AND ([Введите индификационный номер купившей картины]=Продажа!картина);
 
UPDATE Собственность
SET владелец = владелец, картина = картина, дата_начала = дата_начала, дата_окончания = NOW()
WHERE (Владелец = [Введите индификационный номер владельца, продавшего картину]) AND (картина=[Введите индификационный номер купившей картины]);
Ругается он на слово UPDATE.
Что делать?
Заранее спасибо.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.11.2010, 20:20
Ответы с готовыми решениями:

Мега перекрёстный запрос или как его назвать?
Вот есть база, кривая как рога у антилопы гну, лежит скрюченная в приложении, mdb нет и не будет :(...

Сложный мега запрос
Помогите пожалуйста, мне нужно стделать так как написано в третем задании и нужно чтоб дата и склад...

странный запрос
Есть такая таблица: declare @tab TABLE ( otdel int ,summa int ,instruk int ) insert into...

Перекрестный запрос. Странный вывод данных
Здравствуйте, Знатоки и Знаточки! При создание перекрестного запроса получается не то, что хотел...

3
1180 / 631 / 39
Регистрация: 30.05.2010
Сообщений: 715
05.11.2010, 23:51 2
Здравствуйте DLev.
1. "..в одном запросе сделать 3 вещи.." - огорчу но SQL синтаксис применяемый в MS Access, не допускает создание Хранимых процедур с набором исполняемых конструкций по аналогии с SQL сервером.
2. "..я ввожу 2 параметра.." - настоятельно рекомендую при использовании в SQL конструкциях параметров, явно их объявлять. Объявление обяжет указывать тип, и избавит от возможных проблем к которым предрасположены подобные конструкции.
Пример:
SQL
1
2
3
4
PARAMETERS [Параметр 1] Text ( 255 ), [Параметр 2] Long;
SELECT [Параметр 1],  * 
FROM Table1
WHERE F1 =[Параметр 2];
3. "обнаружены символы за приделами инструкции SQL". - обязательным признаком завершения раздела декларации (PARAMETERS... в примере) и не обязательным признаком завершения SQL конструкции/ инструкции является - ; (точка с запятой).
Вот на это и ругается:
"....Продажа!картина);
UPDATE...." и будет "ругаться" не только из за символа/признака завершения конструкции, но и по причине указанной выше.

надеюсь моё изложение понятно, успехов Вам.
Евгений.
1
40 / 15 / 0
Регистрация: 03.11.2010
Сообщений: 13
06.11.2010, 02:57 3
Здравствуйте DLev.
Огорчать не собираюсь, попробуйте макрос.
Макрос делает все не в одном запросе, а в сколько угодно по очереди.

Каждый запрос отвечает за определенное действие, Создание Таблицы, Добавления Записей в таблицу, Обновление выбранных записей, Удаление выбранных записей, Сбор данных с преобразованием из таблицы столбцов в строки (Перекрестный) и плюс один объединение таблиц в один. Если необходимо выполнить действия, которые зависят от нескольких показателей, нужно задумываться о макросах, последовательное объединение нескольких запросов (поочередное). Обычно это хорошо выражается из конструктора форм при создание кнопок, отменить выполнение мастера, если оно запущено по умолчанию при создание кнопки. (Конструктор форм) Выделяем кнопку (вновь созданную на форме, или когда привыкните и ко всем кнопкам) Вызываем свойство правой кнопкой мыши, выделяем Событие, становимся на ячейку после нажатия, в правой стороне ячейки жмем на [...] Выходит окно Макрос, Программа и еще что то. Выбираем Маркос и попадаем на мало понятный конструктор, если в нем разобраться, 80% сами программки писать будите. Для задачи из 3 запросов, по очередное выбираете ОткрытьЗапрос 3 раза (в параметрах, Выбрать запрос, макрос считает запросами не открываемыми (Обновление, Удаление, Добавление Ошибок не возникнет)), параметры не слетят с Формы. После выполняйте открытие запросов и таблиц для обработки, макрос это последовательное объединение запросов и чего угодно, Вам сюда и надо, кажись.
1
1180 / 631 / 39
Регистрация: 30.05.2010
Сообщений: 715
06.11.2010, 12:02 4
Kohonas, Вашу рекомендацию нельзя назвать удовлетворяющей условию автора ".. в одном запросе.."
мнение: совет "..задумываться о макросах.." и инструкция по применению опоздали лет на десять-пятнадцать. Сегодня о макросах "задумываются" только в учебных центрах по изучению MS Access, на практике от них в большинстве случаев давно отказались, в пользу VBA.

Евгений.
1
06.11.2010, 12:02
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
06.11.2010, 12:02
Помогаю со студенческими работами здесь

Выборка из трех таблиц - мега запрос?
Доброго всем дня, уважаемые форумчане! Есть три таблицы: 1. product - с полями id, parrent_id,...

Странный запрос на сервер srv195-131.vkontakte.ru
Друзья, всем доброго дня :) Подскажите мне плиз, что это за такие адреса?...

Странный doc(rtf) файл (совсем странный)
Добрый день, сегодня на работе столкнулся с очень странным .doc файлом. 3 страницы - вес 45,9 МБ....

Мега меню
Здравствуйте, я столкнулся с проблемой, а именно с плагином Мега Меню, на моём сайте...

Мега портал
Уважаемый оптимизаторы, прошу вашого совета. Поступил огромный заказ на создание огромного...

Мега Трабла -(
Двигал неспеша свой сайт, созданный еще в феврале. Добрался до первой страницы (свадебный...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru