Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2007.05.27;
Скачать: [xml.tar.bz2];

Вниз

Использование результата запроса Select в Update   Найти похожие ветки 

 
Kostafey ©   (2007-05-07 14:43) [0]

Уважаемые Мастера! Прошу помоши в следующем вопросе.

СУБД Access, ADO (ADOCommand)
Необходимо выполнить запрос на изменение записи, где результат
берется из запроса. Что-то вроде:

update Dar
set Kol =
(
 select Count(*)
 from InventarDar
 where InventarDar.InventarDar_Dar_id = Param1
)
where Dar.Dar_id = Param2

где Param1, Param2 -параметры.
Этот код приводит к ошибке.

В SQL Server можно было бы написать что-то вроде:

Declare @NewKol integer
Set @NewKol = (
 select Count(*)
 from InventarDar
 where InventarDar.InventarDar_Dar_id = Param1
)
update Dar
set Kol = @NewKol
where Dar.Dar_id = Param2


Кстати на соседних ветках упоминался JETSQL40.CHM.
Declare - есть в списке зарезервированных слов Microsoft Jet,
но использование его в Access тоже приводит к ошибке.

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

Как с Access бороться ?


 
Kostafey ©   (2007-05-07 17:09) [1]

Отдельно
( select count(*)  from InventarDar where InventarDar.InventarDar_Dar_id = 2)
и
update Dar
set Kol = 2
where Dar.Dar_id= 2

работают правильно.

Вместе

update Dar
set Kol =( select count(*)  from InventarDar where InventarDar.InventarDar_Dar_id = 2)
where Dar.Dar_id= 2

Выдает: "B oпepaции дoлжeн иcпoльзoвaтьcя oбнoвляeмый зaпpoc."
И в интернет ничего подходящего найти не могу...


 
Kostafey ©   (2007-05-08 09:29) [2]

пока сделал через 2 отдельных запроса


 
sniknik ©   (2007-05-08 10:54) [3]

> И в интернет ничего подходящего найти не могу...
совет. пользуйся вторым фарефоксом, у него есть проверка орфографии, и может тогда ты будеш писать без ошибок не вставляя нерусские буквы в русские слова... (не, мне то это пофигу, но гугль со мной не согласен...)


 
Kostafey ©   (2007-05-08 11:28) [4]

> совет. пользуйся вторым фарефоксом

Не поверите, им и пользуюсь.

Кстати, правда ничего толкового по SQL в Access не нашел.

Ладно. Чет-то у меня ошибка ошибка в 17-й строке, все равно весь модуль перелопачивать надо.
Эта уже основная проблема. Это вообше, наверное по-другому делать буду.

Все же спасибо, что заглянули.


 
Kostafey ©   (2007-05-08 11:29) [5]

> Эта уже основная проблема

НЕ основная проблема



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2007.05.27;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.051 c
2-1178371931
ctudent
2007-05-05 17:32
2007.05.27
Как получить почту?


15-1177554156
Slider007
2007-04-26 06:22
2007.05.27
С днем рождения ! 26 апреля


2-1178780591
Kostafey
2007-05-10 11:03
2007.05.27
Снова про With


2-1178520778
Doom-2
2007-05-07 10:52
2007.05.27
Как в ListBox строки местами менять?


2-1178729528
Виктор007
2007-05-09 20:52
2007.05.27
Список последних открытых файлов





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский