powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Запрос не работает! БД-MS-Access 2000, ADODB
12 сообщений из 12, страница 1 из 1
Запрос не работает! БД-MS-Access 2000, ADODB
    #32450682
ЗАБАВА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Так выглядит мой запрос и MS-Access 2000 моя база.


strSQL = " UPDATE tblWarenBestand SET " & _
" ArtikelNr = ( SELECT ArtikelNr FROM tblArtikel WHERE ArtikelName = '" & ctlArtikelName.Text & "' ), " & _
" FilmTitel = '" & txtFilmTitel.Text & "', " & _
" PreisNr = ( SELECT PreisNr FROM tblPreis WHERE Preis = '" & ctlPreis.Text & "' ), " & _
" Datum = '" & txtDatum.Text & "' " & _
" WHERE FilmNr = " & txtFilmNr.Text


Ошибка ADODB N2147217904 - что-то вроде: "Минимум для одного необходимого параметра не было задано значение"
Bока...!

Подскажите что я намудачила?
...
Рейтинг: 0 / 0
Запрос не работает! БД-MS-Access 2000, ADODB
    #32450788
Фотография Max Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Жаль, не могу запустить твой запрос в Аксесе - нету ни таблиц, ни чего.
Поэтому погадаю так.
1. Первое правило - сначала запускаешь в Аксесе. Если прокатывает - переносишь эту строку в язык программирования.
2. Если не хватает параметра - значит-таки его не хватает, можешь поверить моему опыту.
3. Не понятно откуда у тебя два Селекта взялось. Селект по-идее один должен быть.
Обшая рекомендация - сначала обкатай запрос а Аксесе. Если в Аксесе пойдёт, а в языке нет, тогда продолжим этот разговор.
Макс Про
...
Рейтинг: 0 / 0
Запрос не работает! БД-MS-Access 2000, ADODB
    #32451276
ЗАБАВА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Очень хорошая идея, а можно как-нибудь хотябы из командной строки? На Access время надо, я его так хорошо не знаю, базу заложить не сложно, а клиента хотела написать на VB.

авторЖаль, не могу запустить твой запрос в Аксесе - нету ни таблиц, ни чего
я тебе могу это удовольствие предоставить (по майлу выслать?) база простая 3 таблицы:

tblWarenBestand - это таблица всех товаров, номера фильмов (у меня видеотека, всё что там есть вообщем и вцелом называют "фильмами", не актуальные "фильмы" идут в продажу) произвольные только не должны повторяться:

|   FilmNr   |   ArtikelNr   |      Titel      |   PreisGruppe   |      Datum      |
        1               1           Название1             3               20.12.1999
        5               6           Название2             5               23.02.2003


tblArtikel - табл. наименований артиклей

|   ArtikelNr   |   ArtikelName   |
         1                 DVD
         2                 PS2


tblPreis - табл. цен. Организовала отдельно вдруг цены изменятся...

|   PreisGruppe   |     Preis     |
           1                 0,50 €
           2                 3,00 €
...
Рейтинг: 0 / 0
Запрос не работает! БД-MS-Access 2000, ADODB
    #32451710
Фотография Alviga
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А проверить все подзапросы, возможно они возвращают NULL или более одного значения.
Проверить формат даты.
Ну а с синтаксисов вроде все ок.
...
Рейтинг: 0 / 0
Запрос не работает! БД-MS-Access 2000, ADODB
    #32452073
ЗАБАВА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
там была маленькая ошибка, я её исправила не PreisNr a PreisGruppe и теперь получаю другую ошибку:
Nr.: -2147467259
"Операция должна обновляемый опрос использовать"


Вот мой опрос:

strSQL = " UPDATE tblWarenBestand SET " & _
" ArtikelNr = ( SELECT ArtikelNr FROM tblArtikel WHERE ArtikelName = '" & ctlArtikelName.Text & "' ), " & _
" FilmTitel = '" & txtFilmTitel.Text & "', " & _
" PreisGruppe = ( SELECT PreisGruppe FROM tblPreis WHERE Preis = '" & ctlPreis.Text & "' ), " & _
" Datum = '" & txtDatum.Text & "' " & _
" WHERE FilmNr = '" & txtFilmNr.Text & "'"

Вот результат Debug.Print

UPDATE tblWarenBestand SET ArtikelNr = ( SELECT ArtikelNr FROM tblArtikel WHERE ArtikelName = 'DVD P' ), FilmTitel = 'myTitel', PreisGruppe = ( SELECT PreisGruppe FROM tblPreis WHERE Preis = '5' ), Datum = '25.03.2001' WHERE FilmNr = '11'

ну и ошибка...

кстати про эту ошибку написано в MS-Access помощи, но честное слово не поняла ни слова... Буду дальше глядеть...

Люди кто словечко ценное скажет? Время ведь дорого стоит!
...
Рейтинг: 0 / 0
Запрос не работает! БД-MS-Access 2000, ADODB
    #32452086
мадама
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Во-первых проверь свои под-селекты. Запусти их отдельно в аскесе, посмотри, может они выдают больше одного значения. Если да, прокорректируй их.
Если нет, попробуй запустить запрос без подселектов, подставиь
вместо них что-нибудь толковое сама. Если работает, вставь один подселект назад и вместо другого своё значение и попробуй. Если нет, анологично со вторым.
...
Рейтинг: 0 / 0
Запрос не работает! БД-MS-Access 2000, ADODB
    #32452093
мадама
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А вообще мне ещё ваш
Код: plaintext
where Preis='5'

подозрителен. Уверены, что у вас там текстовое поле? Может не нужны кавычки-то?
...
Рейтинг: 0 / 0
Запрос не работает! БД-MS-Access 2000, ADODB
    #32452103
ЗАБАВА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
а без кавычек синтаксис ошибку выдаёт, да я эту строку вообще убирала, всё равно "говорит что опрос необновляемый"
...
Рейтинг: 0 / 0
Запрос не работает! БД-MS-Access 2000, ADODB
    #32452104
ЗАБАВА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
автор...попробуй запустить запрос без подселектов, подставиь
вместо них что-нибудь толковое сама. Если работает, вставь один подселект назад и вместо другого своё значение и попробуй. Если нет, анологично со вторым.

без подселестов работает, как только один подставляю прррррррр...
...
Рейтинг: 0 / 0
Запрос не работает! БД-MS-Access 2000, ADODB
    #32452112
мадама
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сам подселект проверяла?
...
Рейтинг: 0 / 0
Запрос не работает! БД-MS-Access 2000, ADODB
    #32452115
мадама
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если запрос работает не в цикле, выбери рекордсетом результаты подселекта до того и подставляй в программе вместо подселектов.
...
Рейтинг: 0 / 0
Запрос не работает! БД-MS-Access 2000, ADODB
    #32452127
ЗАБАВА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
впринципе я об этом тоже думать начала, но хотелось бы одним запросом. Я уже нашла, точнее мне в форуме Access указали, это база выдаёт ошибку потому что этот запрос действительно необновляемый:\r
\r
/topic/80731 \r
\r
/topic/72695&hl=%ee%e1%ed%ee%e2%eb%ff%e5%ec%fb%e9+%e7%e0%ef%f0%ee%f1 \r
\r
и далее отсюда: \r
\r
http://www.sql.ru/forum/actualtopics.aspx?search=%EE%E1%ED%EE%E2%EB%FF%E5%EC%FB%E9+%E7%E0%EF%F0%EE%F1&submit=%CD%E0%E9%F2%E8&bid=4
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Запрос не работает! БД-MS-Access 2000, ADODB
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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