powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Что нужно подключить в проекте ?
14 сообщений из 14, страница 1 из 1
Что нужно подключить в проекте ?
    #33867292
Vikt99
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Что нужно подключить в проекте
VB чтобы заработало DMAX/DMIN/DSUMM -
(чтобы я мог выполнить SQL-запросы из VB)
(функции JET для ACCESS)
...
Рейтинг: 0 / 0
Что нужно подключить в проекте ?
    #33867321
Ashton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Эти функции поддерживает Access, а не Jet. Вместо этих функций пользуйся подзапросами.
...
Рейтинг: 0 / 0
Что нужно подключить в проекте ?
    #33867361
Vikt99
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Как выполнить из VB такой запрос
UPDATE table1 set a1 = (select max(id) from table2)

Для аccess не выполняется в отличии от
sql-servera
...
Рейтинг: 0 / 0
Что нужно подключить в проекте ?
    #33867493
Slice
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
подключи Microsoft Activex Data Objects (число) Library
...
Рейтинг: 0 / 0
Что нужно подключить в проекте ?
    #33867525
Vikt99
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я просто не уточню
Все запросы я выполняю прекрасно ( from VB)
Такой же запрос на sql-server Я выполняю прекрасно
А вот на аccess выдает ошибку :
что то типа "not updateatable query"
...
Рейтинг: 0 / 0
Что нужно подключить в проекте ?
    #33867536
Vikt99
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
это касается запросов UPDATE ( а внутри SELECT)
Что тут сделать ?
...
Рейтинг: 0 / 0
Что нужно подключить в проекте ?
    #33867551
Ashton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Навскидку, код из Access.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
    Dim rst As ADODB.Recordset
    Dim lngMaxValue As Long
    
    Set rst = New ADODB.Recordset
    
    rst.Open "SELECT Max(id) AS [Max-id] " & _
      "FROM Table2", CurrentProject.Connection
    
    lngMaxValue = rst.Fields("Max-id").Value
    
    CurrentProject.Connection.Execute "UPDATE Table1 SET a = " & lngMaxValue

    rst.Close
    Set rst = Nothing
...
Рейтинг: 0 / 0
Что нужно подключить в проекте ?
    #33867578
Vikt99
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AshtonНавскидку, код из Access.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
    Dim rst As ADODB.Recordset
    Dim lngMaxValue As Long
    
    Set rst = New ADODB.Recordset
    
    rst.Open "SELECT Max(id) AS [Max-id] " & _
      "FROM Table2", CurrentProject.Connection
    
    lngMaxValue = rst.Fields("Max-id").Value
    
    CurrentProject.Connection.Execute "UPDATE Table1 SET a = " & lngMaxValue

    rst.Close
    Set rst = Nothing


В данном коде, насколько я понимаю идет
Сначал Select , а потом Update
Шаг за Шагом , а мне нужно все в одном запросе
сделать - Только 1 шаг
...
Рейтинг: 0 / 0
Что нужно подключить в проекте ?
    #33867721
Ashton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Можно создать временную таблицу и потом обновить, но это опять 2 шага. Access - не сиквел. За один шаг, я думаю, запрос такого вида осуществить не получится, все равно придется искать максимум программно и потом подставлять в запрос на обновление.
...
Рейтинг: 0 / 0
Что нужно подключить в проекте ?
    #33868223
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vikt99Я просто не уточню
Все запросы я выполняю прекрасно ( from VB)
Такой же запрос на sql-server Я выполняю прекрасно
А вот на аccess выдает ошибку :
что то типа "not updateatable query"Это разница между диалектами SQL. У Access другой синтаксис SQL чем у SQL Server. К VB вопрос отношения не имеет совсем.
Лучше спроси на форуме по Access как в нем сделать запрос аналогичный SQLServer'ному.
...
Рейтинг: 0 / 0
Что нужно подключить в проекте ?
    #33868397
Vikt99
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
White Owl Vikt99Я просто не уточню
Все запросы я выполняю прекрасно ( from VB)
Такой же запрос на sql-server Я выполняю прекрасно
А вот на аccess выдает ошибку :
что то типа "not updateatable query"Это разница между диалектами SQL. У Access другой синтаксис SQL чем у SQL Server. К VB вопрос отношения не имеет совсем.
Лучше спроси на форуме по Access как в нем сделать запрос аналогичный SQLServer'ному.

Да нет же для Access я уже знаю -
UPDATE table1 SET a1 = dmax("id","table2")
(Но это работает в самой среде Access)
A сейчас мне нужно запустить данный запрос из среды VB
UPDATE table1 set A1 = ( SELECT max(id) from table2 )
( Этот запрос не работает для ассеss, но на Sql-SERVER например
все работает) Вот я и спрашиваю как именно можно ( если можно)
все-таки выполнить запрос такой вложенный из VB
...
Рейтинг: 0 / 0
Что нужно подключить в проекте ?
    #33868420
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vikt99Да нет же для Access я уже знаю -
UPDATE table1 SET a1 = dmax("id","table2")
(Но это работает в самой среде Access)
A сейчас мне нужно запустить данный запрос из среды VBНу и в чем проблема? Запускай этот запрос из VB и все будет в порядке.

Vikt99UPDATE table1 set A1 = ( SELECT max(id) from table2 )
( Этот запрос не работает для ассеss, но на Sql-SERVER например
все работает) Вот я и спрашиваю как именно можно ( если можно)
все-таки выполнить запрос такой вложенный из VBА этот запрос запускай из VB для SQL-Server'а. Для одной базы один запрос, для другой базы другой.

Или тебя интересует как различить какой запрос в какую БД посылать? Никак. Помни к какой базе ты подключился и используй синтаксис соотвествующего типа.
...
Рейтинг: 0 / 0
Что нужно подключить в проекте ?
    #33868444
Vikt99
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
White Owl[quot Vikt99]Да нет же для Access я уже знаю -
UPDATE table1 SET a1 = dmax("id","table2")
(Но это работает в самой среде Access)
A сейчас мне нужно запустить данный запрос из среды VBНу и в чем проблема? Запускай этот запрос из VB и все будет в порядке.

Вот в этом и проблема не запускается через ado из VB
Непонятна функция dmax - только в среде Aссеss проходит
...
Рейтинг: 0 / 0
Что нужно подключить в проекте ?
    #33868507
Фотография Magnus23
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vikt99
Вот в этом и проблема не запускается через ado из VB
Непонятна функция dmax - только в среде Aссеss проходит
А при чем здесь среда? Ты же его акцесу текстом отправляешь?
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Что нужно подключить в проекте ?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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