powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Проблема с UPDATE (В операции должен использоваться обновляемый запрос)
11 сообщений из 11, страница 1 из 1
Проблема с UPDATE (В операции должен использоваться обновляемый запрос)
    #32869031
big-spoon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Это рабочий вариант
Код: plaintext
UPDATE TmpTable SET Gpm_Cu1003 = Gpm_Cu8001 *  2 ;


если же пишу
Код: plaintext
1.
2.
UPDATE TmpTable SET Gpm_Cu1003 = 
                       (SELECT ttest.y1 FROM model LEFT JOIN ttest ON model.id = ttest.id 
                       WHERE [model.title_model] ="'+'Cu1003'+'")



, то вылетает ошибка "В операции должен использоваться обновляемый запрос."
посмотрел в хелпе C:\Program Files\Common Files\Microsoft Shared\Office10\1049\JETSQL40.CHM инфо
про обновляемые запросы. в моем запросе нет никаких стат. или др. вычисляемый функций.
В чем тогда дело?
...
Рейтинг: 0 / 0
Проблема с UPDATE (В операции должен использоваться обновляемый запрос)
    #32869036
Фотография Alexander G
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хелп- Обновление данных в запросе
Запрос Запрос, вычисляющий сумму, среднее значений, пересчитывающий значения, а также выполняющий другие виды вычислений итогов значений поля, либо запрос на обновление, имеющий ссылки на поле в строке Обновление из перекрестного запроса, запроса на выборку или подчиненного запроса, содержащего итоговые значения или статистические функции
Изменение - Невозможно
Решение:
С помощью статистических функций по подмножеству в строке Обновление запроса на обновление можно указать ссылки на поля перекрестного запроса, запроса на выборку или подчиненного запроса, содержащего итоговые значения или статистические функции.
...
Рейтинг: 0 / 0
Проблема с UPDATE (В операции должен использоваться обновляемый запрос)
    #32869038
big-spoon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
это я читал, но ничего не понял.
пробывал вместо update использовать insert into, а потом к результату вставки делать группировку (sum), т.е.
на insert into у меня записей получалось в x раз больше, чем при update, где x-число вызовов insert into.

посмотрел в инете, советуют на такую ошибку следующие решения:
1. открыть доступ к базе на изменение
2. разбить запросы на два

но это думаю не для моей базы
...
Рейтинг: 0 / 0
Проблема с UPDATE (В операции должен использоваться обновляемый запрос)
    #32869041
big-spoon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
http://]http://support.microsoft.com/default.aspx?scid=http://support.microsoft.com:80/support/kb/articles/Q175/1/68.ASP&NoWebContent=1

у меня просто delphi6+ado+access, никаких asp нет
...
Рейтинг: 0 / 0
Проблема с UPDATE (В операции должен использоваться обновляемый запрос)
    #32869043
big-spoon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
вот еще нашел
Опыт использования ADO для доступа к базам данных форматов MS Access, xBase и Paradox " Из неё: Для того, чтобы Вы имели возможность производить действия по добавлению, удалению записей или редактированию данных в таблице, таблица должна иметь первичный ключ. Создал в таблице первичный ключ - всё заработало!!!

у меня таблица вот такая
Код: plaintext
1.
2.
3.
4.
5.
6.
create table  experiment2(
id integer,
t  double,
y1 double,
y2 double,
y3 double
);

что значит добавить первичный ключ?
...
Рейтинг: 0 / 0
Проблема с UPDATE (В операции должен использоваться обновляемый запрос)
    #32869045
Фотография Alexander G
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1.С дельфями я пас. Но в общем случае, что мешает выдернуть значение из подчиненного запроса в переменную и динамически сформировать выражение SQL?
2.
Код: plaintext
1.
2.
3.
4.
5.
create table  experiment2
(t  double,
y1 double,
y2 double,
y3 double
id integer CONSTRAINT MyKey PRIMARY KEY);
id - будет ключевым полем.
...
Рейтинг: 0 / 0
Проблема с UPDATE (В операции должен использоваться обновляемый запрос)
    #32869055
big-spoon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
а как теперь запролнять ключевое поле - компилятор ругается на то, что ключ. поле не может быть Null?

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
    sqlString:= 'INSERT INTO TmpTable (t, %s) '+
                'SELECT ttest.t, %s '+
                'FROM model LEFT JOIN ttest ON model.id = ttest.id ' +
                'WHERE [model.title_model] = %s';

    sqlString := 'UPDATE TmpTable SET Gpm_Cu1003 = '+
                '(SELECT ttest.y1 FROM model LEFT JOIN ttest ON model.id = ttest.id '+
                'WHERE [model.title_model] ="'+'Cu1003'+'")';

я явно нигде не указываю ключевое поле, в строке %s его нет.
...
Рейтинг: 0 / 0
Проблема с UPDATE (В операции должен использоваться обновляемый запрос)
    #32869059
big-spoon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
как ключевое поле сделать автоинкрементным, типа счетчик?
...
Рейтинг: 0 / 0
Проблема с UPDATE (В операции должен использоваться обновляемый запрос)
    #32869088
Фотография Alexander G
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
create table xx (id counter)
...
Рейтинг: 0 / 0
Проблема с UPDATE (В операции должен использоваться обновляемый запрос)
    #32869089
Фотография Alexander G
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
точнее
create table xx (id counter CONSTRAINT MyKey PRIMARY KEY)
...
Рейтинг: 0 / 0
Проблема с UPDATE (В операции должен использоваться обновляемый запрос)
    #32869134
big-spoon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
или так CREATE TABLE TmpTable (ID counter, t double, .... , Primary Key (ID))?

добавление ключа не решило проблему

пришлось добавлять insetr into, а потом прогонять группировку
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Проблема с UPDATE (В операции должен использоваться обновляемый запрос)
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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